oracle 表空间问题

问题:

用数据泵Impdp迁移数据 ,数据追加到一个已创建的表,报了一个错 ORA-01691: unable to extend lob segment VCASH.SYS_LOB0000225377C00011$$ by 8192 in tablespace VCASH_DATA

查看此对象所在的数据文件

select  distinct file_id from dba_extents where owner='VCASH' and segment_name='SI_ACCESS_RECORD';

select file_name,tablespace_name,autoextensible,file_id,bytes/1024/1024/1024 from dba_data_files 
where tablespace_name='VDG_DATA' 
  and file_id in(select distinct file_id 
                 from dba_extents 
                 where owner='VCASH' 
                 and segment_name='SI_ACCESS_RECORD'
);


看到autoextensible 都是 YES 可以扩展的,df -h 磁盘空间还有, 再看所有的数据文件都大小约31.9G

知识:

       表空间数据文件容量与DB_BLOCK_SIZE的设置有关,此参数在创建数据库实例的时候指定。DB_BLOCK_SIZE参数可以设置为4K、8K、16K、32K、64K等(oracle默认是8k),Oracle的物理文件最大只允许4194304个数据块(这个参数具体由操作系统决定,一般应该是此数字),表空间数据文件的最大值可以通过4194304×DB_BLOCK_SIZE/1024M计算得到:

4k最大表空间为:16384M

8K最大表空间为:32768M

16k最大表空间为:65536M

32K最大表空间为:131072M

64k最大表空间为:262144M


查找 DB_BLOCK_SIZE

show parameter db_block_size   8192

所以目前表空虽然可以自动扩展,但数据文件已达到最大值32G,需要额外添加数据文件


ALTER TABLESPACE  表空间名 ADD DATAFILE '数据文件路径' SIZE 1G AUTOEXTEND ON  NEXT 10M MAXSIZE [UNLIMITED | value_size ];


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值