查看表空间大小
SELECT FILE_NAME as 数据文件,TABLESPACE_NAME as 表空间名称,AUTOEXTENSIBLE as 自动扩展,STATUS as 状态,MAXBYTES as 可扩展最大值,USER_BYTES as 已使用大小,INCREMENT_BY as 自动扩展增量 FROM dba_data_files
修改表空间大小
-- 扩展空间,将数据文件扩大至5000MB
alter database datafile 'D:\DataBase\Test.DBF' resize 5000m;
-- 自动增长,表空间不足时增加200MB,最大扩展5000MB
alter database datafile 'D:\DataBase\Test.DBF' autoextend on next 200m maxsize 5000m;
-- 扩展无限大空间
alter database DATAFILE 'D:\DataBase\Test.DBF' autoextend on maxsize unlimited;
所以将maxsize设置为unlimited也并非能无限扩展,还受限于区块大小,即blocksize大小,如一般blocksize默认8k,数据文件大小最大也只能扩展到32GB。当然可以设置bigfile(大文件表空间),8k的blocksize表空间文件理论上最大可以扩展32TB,但是实际上受操作系统的文件系统限制。使用大文件表空间(bigfile tablespace)可以大幅度增强Oracle数据库的存储能力,简化数据库管理工作。与此同时,付出的代价是增加备份与恢复的时间。**如果是中小型项目,数据量在TB级以内,建议使用小文件表空间。**一个小文件表空间(smallfile tablespace)最多可以包含1022个数据文件(datafile)。详细可看Oracle物理文件限制大小表格Physical Database Limits
添加表空间数据文件
-- 增加数据文件,TestTablespace是这里测试使用的表空间名称
alter tablespace TestTablespace add datafile 'D:\DataBase\Test2.DBF' size 1024m;
评论区