生产环境遇到数据量暴增或累计数据达到某种程度后,表空间和索引空间的使用量就需要扩容。
1、查询表空间使用情况
SELECT FILE_NAME "文件名称",
TABLESPACE_NAME "表空间",
BYTES 1024 1024 1024 "文件最小/G",
USER_BYTES 1024 1024 1024 "已使用情况/G",
STATUS "文件状态",
AUTOEXTENSIBLE "是否自动扩展"
FROM dba_data_files;
2、扩大表空间同时设置为自增
ALTER DATABASE DATAFILE '/oradata/UTMS/datafile/UTMSINDEX_1.dbf' AUTOEXTEND ON NEXT 100m MAXSIZE 31G;
注:Oracle 单个数据块文件最大不能超过32G,且MAXSIZE必须为整数。
3、创建新的数据块
alter tablespace "UTMSINDEX" add datafile '/oradata/UTMS/datafile/UTMSINDEX_2.dbf' size 128M autoextend on next 200M MAXSIZE 31G;
当数据块dbf文件超过32G后,就需要新增一个数据块。
4、视图字段解释
字段名称 |
字段含义 |
FILE_NAME |
数据文件名称 |
FILE_ID |
数据库文件ID |
TABLESPACE_NAME |
所属表空间名称 |
BYTES |
文件大小:单位/bytes |
STATUS |
文件状态:有效AVAILABLE/无效INVALID |
RELATIVE_FNO |
表空间文件相对号 |
AUTOEXTENSIBLE |
是否自动扩展:YES/NO |
MAXBYTES |
文件的最大值:单位/bytes |
MAXBLOCKS |
文件最大数 |
INCREMENT_BY |
默认自动增量值 |
USER_BYTES |
已使用情况:文件中有用的文件大小 |
USER_BLOCKS |
ORACLE文件有用的大小 |
ONLINE_STATUS |
文件在线状态 |
end