1、 在Oracle数据库中,通常的块大小为8192字节,即8kb,但Oracle 11g允许创建块大小与基本块不同的表空间,块大小可由创建表空间时的blocksize参数指定,这样有利于存储不同大小的对象,但用户需要注意以下3点: 1、表空间的非标准块的大小为基本块的倍数。比如:大小为16KB、64KB、128KB。 2、Oracle 11g通常使用SGA自动共享内存管理,因此需要设置初始化参数db_16k_cache_size=16K。 3、这种块较大的表空间通常用来存放大对象(LOB)类型。
2、例如:创建一个非标准块的表空间,块的大小为标准块的2倍。
3、建立大文件表空间: 从Oracle 11g版本开始,薪姚蟪食引进了一个新的表空间类型——大文件(BIGFILE)。爵奏笆棚与以前版本的最多可由1022个文件组成的表空间不同,大文件表空间存放在一个单一的数据文件中,并且它需要更大的磁盘容量来存放数据。大文件表空间可以根据选择的块的大小变化,从32TB增至128TB. 大文件表空间是为超大型数据库而设计的。当一个超大型数据库具有上千个读/写数据文件时,更新数据文件头部(比如检查点)的操作可能会花费相当长的时间。如果降低数据文件的数量,那么这些操作完成起来可能会快很多。创建一个大文件表空间,只需要在CREATE语句中使用BIGFILE关键字即可。
4、例如:创建一个大文件表空间,指定一个数据文件,并且数据文件的大小为2GB
5、由于大文件(BIGFILE)表空间只有一个数据文件,所以,当需要重新设置其大小时不需要标识数据文件的具体路径和名称,只需要使用ALTERTABLESPACE命令指定大文件表空间的名称,即可很方便的修改其大小。另外,需要注意的是:在创建表空间的语法中使用size来标识数据文件的大小,而在修改表空间时,需要使用resize来重置数据文件的大小。
6、例如:将大文件表空间tbs_test_big的大小修改为1GB
7、与大文件表空间不同的是,传统表空间可能包含多个数据文件,如果要改变其大小,则需要在ALTER DATABASE语句后面指定完整的操作系统路径名或内部文件号辨别每个数据文件,然后再从新设置它们的大小。
8、例如:把数据文件datafile3.dbf(其所属的表空间是tbs_test_3)的大小由原来的20MB修改为100MB