您的位置:首页 > 数据库 > Oracle

oracle数据库表空间(段、区、块)讲解和表空间扩展

2014-12-04 03:11 148 查看


基本关系:数据库---表空间---数据段---分区---数据块---操作系统块

 

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

 
4000

 

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


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库 表空间