基本关系:数据库---表空间---数据段---分区---数据块---操作系统块
smallfile tablespace
一个表空间最多包含210 – 2 =1022个数据文件;
一个数据文件的大小由db_block_size和db_block数据块数量决定;
(oracle的物理文件(db_block)最大只允许4M数据块=4096x1024=4194303个数据块(由操作系统决定))
数据库实例的db_block_size默认是8KB;
一个表空间最大为: 1022x8x4194303=34292621328KB 约为 32TB如果db_block_size为32KB: 约为128TB
单个数据文件最大为:8x4194303=33554424KB 约为32G
如果db_block_size为32KB: 约为128G
bigfile tablespace
一个表空间只能有一个数据文件
支持最大物理文件个数(db_block)4G个数据块
那么默认db_block_size=8KB时
表空间最大32TB(也就是一个数据文件32TB)
db_block_size=32KB时
表空间最大128TB(也就是一个数据文件128TB)
注意此表空间没有扩容的余地。
在smallfile tablespace扩展表空间的方法:
-
增加表空间数据文件
ALTER TABLESPACE 表空间名 ADD DATAFILE '数据文件路径' SIZE 20G AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED;
如果是ASM:ALTER TABLESPACE 表空间名 ADD DATAFILE '+DATA' SIZE 20G AUTOEXTEND ON;
2.允许已存在的数据文件自动增长
ALTER DATABASE DATAFILE '数据文件路径'AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED;
-
手工改变已存在数据文件的大小
ALTERDATABASE DATAFILE '数据文件路径'
RESIZE 20G;
联系邮箱:qrcg92@foxmail.com