
除了数据块,Oracle数据库还有其他存储单位,例如段(Segment)、表空间(Tablespace)等。段是由数据库对象占用的一组数据块组成的逻辑单位,例如表、索引、视图等。表空间是由一个或多个数据文件组成的逻辑存储单元,它用于存储数据库对象的数据和元数据。在Oracle数据库中,表空间是分配和管理存储空间的最高级别单位,它可以跨多个物理设备和 *** 作系统文件系统。
1、64位linux 和64位oracle,默认oracle表空间数据文件用的BLOCKSIZE是8k,表空间数据文件最大是32G。SQL>show parameter k_cache_size
查看数据库默认的块大小
SQL>show parameter db_block_size
db_block_sizeinteger 8192
2、为了让一个表空间数据文件存64G,你需要告诉oracle用BLOCKSIZE 是16k
CREATE TABLESPACE TEST DATAFILE ‘/data1/test_ts1.dbf’ SIZE 512M AUTOEXTEND ON NEXT 256M MAXSIZE UNLIMITED BLOCKSIZE 16k
提前需要设置db_16k_cache_size
alter system set db_16k_cache_size=16M scope=both
否则会报错ORA-29339:
tablespace block size 16384 does not match configured block sizes
3、为了让一个表空间数据文件存128G,你需要告诉oracle用BLOCKSIZE 是32k
4、32位linux 和32位oracle,默认oracle表空间datafile用的BLOCKSIZE也是8k,表空间数据文件最大也是32G。试了一下64G文件,也没有问题。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)