解决:EXP-00003: 未找到段 (0,0) 的存储定义报错

本文详细介绍了在使用Oracle 11g的exp命令导出部分表时遇到的错误,并提供了解决方案。问题源于deferred_segment_creation参数默认为true,导致未插入数据的表不分配存储空间。通过执行特定SQL语句,可以批量分配空间给空表,解决导出问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题说明

DB服务器oracle版本:11.2.0.4.0

最近在客户端用exp命令导出部分表时报错,如题。搜索了一下,找到以下解决方案:

 

问题原因

Oracle 11g 有一个参数deferred_segment_creation,默认是true。

意思是当你create某个表但没有插入任何数据时,不会给这个表分配存储空间。

 

解决方案

那我们就手动找出那些空表,去批量分配空间。相当于初始化一个存储空间。

 

select 'alter table '||table_name||' allocate extent(size 64k);' 
from user_tables where table_name not in (select segment_name from user_segments where segment_type = 'TABLE');

将查询出的结果复制执行即可。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值