ORA-29339错误解决办法
SQL> create tablespace test01 datafile 'e:\oracle\testing01.dbf' size 10m
2 blocksize 4k;
create tablespace test01 datafile 'e:\oracle\testing01.dbf' size 10m
blocksize 4k
ORA-29339: 表空间块大小 4096 与配置的块大小不匹配
SQL> show parameter db_block_size;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192
查看数据库的标准数据块大小
SQL> select component,current_size
2 from v$sga_dynamic_components;
COMPONENT CURRENT_SIZE
---------------------------------------------------------------- ------------
shared pool 188743680
large pool 62914560
java pool 54525952
streams pool 0
DEFAULT buffer cache 167772160
KEEP buffer cache 8388608
RECYCLE buffer cache 8388608
DEFAULT 2K buffer cache 0
DEFAULT 4K buffer cache 0
DEFAULT 8K buffer cache 0
DEFAULT 16K buffer cache 12582912
DEFAULT 32K buffer cache 0
Shared IO Pool 0
ASM Buffer Cache 0
查看是否设置了相应的非标准数据库数据缓冲区大小
出现ORA-29339的原因是因为创建的表空间test01与该数据库的标准块大小不同,同时没有
设置相应的非标准数据块的数据缓冲区大小。
SQL> alter system set db_4k_cache_size=8m;
System altered
设置4kb非标准数据块数据缓冲区大小
SQL> create tablespace test01 datafile 'e:\oracle\testing01.dbf' size 10m
2 blocksize 4k;
Tablespace created
设置相应的非标准数据块数据缓冲区大小,以后再创建相应的非标准数据块表空间
SQL> show parameter db_block_size;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192
SQL> select component,current_size
2 from v$sga_dynamic_components;
COMPONENT CURRENT_SIZE
---------------------------------------------------------------- ------------
shared pool 188743680
large pool 62914560
java pool 54525952
streams pool 0
DEFAULT buffer cache 167772160
KEEP buffer cache 8388608
RECYCLE buffer cache 8388608
DEFAULT 2K buffer cache 0
DEFAULT 4K buffer cache 8388608
DEFAULT 8K buffer cache 0
DEFAULT 16K buffer cache 12582912
DEFAULT 32K buffer cache 0
Shared IO Pool 0
ASM Buffer Cache 0
查看4kb非标准数据块缓冲区大小