Oracle表空间是Oracle数据库的一个逻辑划分
- 表空间是数据库中最大的逻辑单位
- 一个数据库可以有一个或多个表空间
- 一个表空间对应一个或多个数据文件
dba_tablespaces
dba_data_files
问题:user_tablespaces和dba_tablespaces结果集的区别
创建表空间
create tablespace BSDATA
datafile '/data/oracle/oradata/orcl/bsdata01.dbf'
size 256M
autoextend on
next 64M
maxsize 20400M
extent management local;
删除表空间
drop tablespace BSDATA including contents and datafiles;
表空间大小统计
表空间的大小是它所对应的数据文件大小的总和
select
tablespace_name,
sum(bytes)/1024/1024/1024 as GB
from dba_data_files group by tablespace_name;
表空间使用率统计
select
tablespace_name,
used_space,
tablespace_size,
round(used_percent,2) as "USED_PERCENT(%)"
from dba_tablespace_usage_metrics;
表空间使用率监控
oracle提供了相关的视图dba_hist_tbspc_space_usage
SQL> desc dba_hist_tbspc_space_usage;
Name Null? Type
------------------- -------- ------------
SNAP_ID NUMBER
DBID NOT NULL NUMBER
TABLESPACE_ID NUMBER
TABLESPACE_SIZE NUMBER
TABLESPACE_MAXSIZE NUMBER
TABLESPACE_USEDSIZE NUMBER
RTIME VARCHAR2(25)
SQL>
说明:TABLESPACE_USEDSIZE为 普通数据占用空间+回收站数据占用空间 总和
网友评论