oracle create bigfile tablespace,create bigfile tablespace

create bigfile tablespace

2017-02-14

在Oracle 10g中,推出了Bigfile tablespace的概念。表空间Tablespace从Oracle 10g以后就分为两个类型,smallfile tablespace和bigfile tablespace。过去一个表空间对应多个数据文件我们称为Smallfile Tablespace。

所谓Bigfile Tablespace最显著的差别就是一个表空间只能对应一个数据文件。Bigfile Tablespace虽只对应一个数据文件,但数据文件对应的最大体积大大增加。传统的small datafile每个文件中最多包括4M个数据块,按照一个数据块8K的大小核算,最大文件大小为32G。每个Small Tablespace理论上能够包括1024个数据文件,这样计算理论的最大值为32TB大小。而Bigfile Datafile具有更强大的数据块block容纳能力,最多能够包括4G个数据块。同样按照数据块8K计算,Bigfile Datafile大小为32KG=32TB。理论上small tablespace和big tablespace总容量相同。

1、实例

create bigfile tablespace bttest datafile '/data1/oracle/BTTEST.dbf' size 128m AUTOEXTEND ON NEXT 256M MAXSIZE UNLIMITED;

306690729c8025717fa6a77a43de7b92.png

2、select tablespace_name, bigfile from dba_tablespaces;

TABLESPACE_NAME BIG

------------------------------ ---

BTTEST YES

3、创建bigfile tablespace的时候,就已经指定了数据文件。如果此时我们尝试加入一个新的数据文件,Oracle系统会报错。

alter TABLESPACE bttest add DATAFILE '/data1/oracle/BTTEST2.dbf' size 128m AUTOEXTEND ON NEXT 256M MAXSIZE UNLIMITED

*

ERROR at line 1:

ORA-32771: cannot add file to bigfile tablespace

4、修改数据库默认的表空间类型:

ALTER DATABASE SET DEFAULT smallfile TABLESPACE

ALTER DATABASE SET DEFAULT bigfile TABLESPACE;

SELECT * FROM database_properties WHERE property_name = 'DEFAULT_TBS_TYPE';

这种情况下,如果我们创建表空间的时候不指定类型,那么默认创建的都是 SMALLFILE 类型的表空间。

5、db_block_size默认为8k,理论上我们可以创建最大 32T

desc DBA_TABLESPACES

SHOW parameters db_block_size

db_block_size  integer   8192

oracle文件最大容量:

发现表空间文件容量与DB_BLOCK_SIZE有关,

在初始建库时,DB_BLOCK_SIZE要根据实际需要,

设置为4K,8K、16K、32K、64K等几种大小,

ORACLE的物理文件最大只允许4194304个块(由操作系统决定),

smallfile tablespace表空间文件的最大值为 4194304×DB_BLOCK_SIZE/1024M。

即:

4k最大表空间为:16384M=16G

8K最大表空间为:32768M=32G

16k最大表空间为:65536M=64G

32K最大表空间为:131072M=128G

64k最大表空间为:262144M=256G

alter system set db_16k_cache_size=32m;

alter system set db_32k_cache_size=32m;

6、大文件表空间从某种角度来说提高了 Oracle 在 VLDB 上的管理能力。

只有自动段空间管理的 LMT (Locally Managed Tablespaces ) 支持 BIGFILE 表空间。

大文件表空间只能包含一个文件,但是文件可以达到 4G 个数据块大小。

(以下用 BFT 指代 BIGFILE Tablespace。BFT 可以和以下存储技术结合使用:

自动存储管理(ASM)   LVM   OMF

理论上的 BFT 可以达到下面所列的值:

数据块大小(单位:K) BFT 最大值(单位:T)

2k 8T

4k 16T

8k 32T

16k 64T

32k 128T

在实际环境中,这还受到操作系统的文件系统的限制。

相关日志

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值