Oracle 11G 不能导出空表的解决方法

Oracle 11G不能导出空表的解决方法

在源库

1、创建DIRECTORY
create directory dir_dp as '/opt/';
2、授权
Grant read,write on directory dir_dp to SBXTAX;
//查看目录及权限
SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d
 WHERE t.table_name(+) = d.directory_name ORDER BY 2, 1;
3、执行导出
expdp SBXTAX/SBXTAX@novadb schemas=SBXTAX directory=dir_dp dumpfile =SBXTAX.dmp logfile=SBXTAX.log;

在此过程中你会看到控制台上面会打印出来 records纪录为0的表的导出信息。

4、copy备份集合到目标库

传输备份文件到这里

scp SBXTAX.dmp ......

在目标库:

5、开始迁移导入数据
/*第1步:创建数据表空间  */
create directory dir_dp as '/u01/app/';
Grant read,write on directory dir_dp to SBXTAX;

/*第2步:创建数据表空间  */
create tablespace SBXTAX 
logging 
datafile '/u01/app/data/NOVADB/datafile/SBXTAX.dbf'
size 50m 
autoextend on 
next 50m maxsize 10480m 
extent management local; 

/*第3步:创建用户并指定表空间  */
drop user SBXTAX cascade;
CREATE USER "SBXTAX" PROFILE "DEFAULT"     IDENTIFIED BY "SBXTAX" DEFAULT TABLESPACE "SBXTAX"     ACCOUNT UNLOCK;
grant connect,resource to SBXTAX;
grant create view to SBXTAX;
Grant read,write on directory dir_dp to SBXTAX;

/*第4步:impdp导入数据  */
-- PS:按用户导入(可以将用户信息直接导入,即如果用户信息不存在的情况下也可以直接导入)
impdp SBXTAX/SBXTAX    dumpfile=SBXTAX.dmp logfile=SBXTAX.log directory=dir_dp

/*第5步:检查表的个数以及名字  */

PS:删除用户下面所有资源包括数据文件等等: drop user SBXTAX cascade;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值