Oracle 配置 Multiple Block Sizes 表空间(三)

2014-11-24 18:29:03 · 作者: · 浏览: 2
/TT01.dbf' SIZE 50M AUTOEXTEND ON NEXT 10M MAXSIZE 100MBLOCKSIZE 4K


*


ERROR at line 1:


ORA-29339: tablespaceblock size 4096 does not match configured block sizes


-- 这里提示了我们:ORA-29339的错误,所以在创建Multiple Block Sizes 之前,必须指定对应的Cache buffer。



--创建一个测试表,放到16k的test 表空间


SYS@anqing1(rac1)> create table tt16k tablespace test as select * from dba_objects;


Table created.



--验证一下表tt16k的block 大小


SYS@anqing1(rac1)> selectsegment_name,blocks from dba_segments where segment_name='TT16K';


SEGMENT_NAME BLOCKS


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


TT16K 384



--当表的每个block越大时,那么它里面就能够存放更多的block


--我们使用8k的block 来创建一个相同的表,来查看它使用blocks,从而进行对比



SYS@anqing1(rac1)> create table tt8k as select * from dba_objects;


Table created.


SYS@anqing1(rac1)> select segment_name,blocks from dba_segments wheresegment_name='TT8K';


SEGMENT_NAME BLOCKS


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


TT8K 768


--看到,使用16k是384个blocks,使用8k是768个blocks。



-- 将tt8kmove 到 test(16k)


SYS@anqing1(rac1)> alter table tt8k move tablespace test;


Table altered.


SYS@anqing1(rac1)>select segment_name,blocks from dba_segments wheresegment_name='TT8K';



SEGMENT_NAME BLOCKS


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


TT8K 384



使用的Blocks 就下降下来了。