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的表的导出信息。

4copy备份集合到目标库

scp SBXTAX.dmp ......

在目标库:

/*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;

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值