ORACLE数据存储空间的管理

Oracle的存储结构

ORACLE数据库中对于数据存储的管理可以从两方面来论述。从逻辑上来说,ORACLE是将数据存储在表空间中的表里面,从物理上来说,ORACLE是将数据存储在磁盘的数据文件里。具体的结构如下图所示:

 

 

 

    一个ORACLE数据库可以包含多个TABLESAPCE;一个表空间物理上可以包含多个DATAFILE,逻辑上可以包括多个SEGMENTTABLEINDEX等);一个SEGMENT可以包含多个EXTENT并且可以跨数据文件存储数据;一个EXTENT包含多个DATA –BLOCK,其不可以跨数据文件存储;一个DATA-BLOCK包含多个OS-BLOCK

 

 

TABLESPACE的管理

         TABLESPACE的管理可以分为两种管理方式:DATA-DICTIONARY MANAGEMENTLOCAL MANAGEMENT。首先必须说明的是:对于在表空间上的说的管理方式是针对表空间里EXTENT的管理,即如何分配和回收EXTENT。在这两种管理方式中前者基本上已经被淘汰了,DATA-DICTIONARY MANAGEMENT 就是用两个数据字典(DEBITCREDIT)来管理哪些EXTENT已经被分配了哪些EXTENT还没有被分配,这种管理方式的缺点就是每分配和回收EXTENT时都需要去查询和更新这个两数据字典,这样就消耗了大量的系统资源,对PERFORMANCE上有很大的影响。对于LOCAL MANAGEMENT这种管理方式,ORACLE是在第一个数据文件的头部存储了一个BITMAP010100111011001100010001110),当一个EXTENT被分配给了某个SEGMENT时只需要将1改为0即可,这对PERFORMANCE有很大的提高。具体的指令如下:

CTEATE TABLESPACE  tab_sapce  DATAFILE  ‘C:/oracle/product/10.1.0/oradata/orcl/datafile/tab_sapce.dbf’ SIZE   100M  EXTENT MANAGEMENT  LOCAL  UNIFORM  SIZE 128k

这里需要指出的是对于LOCAL MANAGEMENT的管理方式还可指定分配的EXTENT为统一的大小(UNIFORM  SIZE 128k)。

         前面讲了TABLESPACE的管理方式,现在现在再讲一下TABLESPACE的空间扩展方法。这里有三种方法:

1.  TABLESPACE

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值