Oracle11g 创建表空间、查看表空间以及扩展表空间

本文详细介绍Oracle数据库中表空间的创建、查询、扩展等操作。包括创建表空间的SQL语句,如何查看表空间的名称、大小、物理文件及使用情况,以及如何扩展超过32GB的表空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1、创建表空间

CREATE TABLESPACE DB_DATA
         LOGGING
         DATAFILE 'D:app/Administrator/oradata/NewDB/DB_DATA.DBF'
         SIZE 32M
         AUTOEXTEND ON
         NEXT 32M MAXSIZE UNLIMITED
         EXTENT MANAGEMENT LOCAL;

2、查看表空间的名称及大小

SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0)
ts_size
FROM dba_tablespaces t, dba_data_files d
WHERE t.tablespace_name
= d.tablespace_name
GROUP BY t.tablespace_name;

3、查看表空间物理文件的名称、路径及大小

SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024
* 1024), 0) total_space
FROM dba_data_files
ORDER BY tablespace_name;

4、查看表空间的使用情况

SELECT SUM(bytes) / (1024 * 1024) AS
free_space, tablespace_name
FROM dba_free_space
GROUP BY
tablespace_name;
SELECT a.tablespace_name,
a.bytes total,
b.bytes
used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes *
100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b,
sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND
a.tablespace_name = c.tablespace_name;

5、扩展表空间

创建单个文件不能超过32GB的表空间

① 如果你创建的表空间超过32GB,可以把这个表空间存储为多个数据文件(个数不限制只要硬盘空间够大),每个文件不大于32GB。

alter tablespace USERS add datafile 'D:app/Administrator/oradata/NewDB/user_2.dbf' size 30000M;

USERS为表空间名称,user_2.dbf为数据文件;一个表空间可以对应多个数据文件,每个文件不大于32GB。

② 如果想让表空间自增长执行下面语句即可,自增长单个数据文件大小上限也是32G,个人觉得自增长的好处在创建的时候等待时间不需要很长,而且在不确定存储数据占用大小的情况下不会浪费存储空间,实际生产环境还是以需求为准吧。

alter tablespace USERS add datafile 'D:\APP\ADMINISTRATOR\ORADATA\ORC\user_2.dbf' size 1000M  autoextend on next 100M;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值