ORACLE导出dmp文件空表无法导出

 使用ORACLE导出dmp时发现没有数据的空表没有导出来,是因为创建完数据库后没有执行

alter system set deferred_segment_creation=false;

执行上述语句可以在表创建时让空表也占有表空间,这样导出时就不会缺少空表了。

如果已经创建数据库时没有执行,现在导出dmp时需要导出空表,执行下方语句,查询出当前数据库中的空表,以及使现有空表也占表空间的语句。

select 'alter table'|| table_name || 'allocate extent;'

from user_tables where segment_created='NO';

查出来的是如下格式的语句

alter table 表名 allocate extent;

对于空表使用当前用户挨个执行该语句,然后导出即可。

整库导出语句:

exp user/password@orcl full=y file=文件名及路径

整库导入语句:

imp user/password@ip:1521/orcl file=dmp文件地址 log=日志地址 fromuser=dmp文件用户 
touser=当前用户 constraints=N ignore=y

导入的过程中可能遇到相同的数据,可以加上 ignore=y 忽略掉重复数据只导入新数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值