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

来源:互联网 发布:python 读取临时文件 编辑:程序博客网 时间:2024/05/17 01:46



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

 

smallfile tablespace

 

一个表空间最多包含210 – 2 =1022个数据文件;

一个数据文件的大小由db_block_sizedb_block数据块数量决定;

oracle的物理文件(db_block)最大只允许4M数据块=4096x1024=4194303个数据块(由操作系统决定))

数据库实例的db_block_size默认是8KB;

一个表空间最大为:1022x8x4194303=34292621328KB          约为32TB

如果db_block_size32KB                                                             约为128TB

单个数据文件最大为:8x4194303=33554424KB                       约为32G

如果db_block_size32KB                                                           约为128G

 

 

bigfile tablespace

 

一个表空间只能有一个数据文件

支持最大物理文件个数(db_block4G个数据块

那么默认db_block_size=8KB    

表空间最大32TB(也就是一个数据文件32TB

db_block_size=32KB

表空间最大128TB(也就是一个数据文件128TB

注意此表空间没有扩容的余地。

 

 

smallfile tablespace扩展表空间的方法:

  1. 增加表空间数据文件

    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;

 

  1. 手工改变已存在数据文件的大小

    ALTERDATABASE DATAFILE '数据文件路径'
    RESIZE 20G;





联系邮箱:qrcg92@foxmail.com


0 0
原创粉丝点击