oracle中有关expdp与impdp的使用整理

exp/imp可以在服务器端和客户端执行,并且备份文件也是可以在客户端产生。而expdp/impdp只能服务器上执行,同时备份文件只能存在服务器上面。

1. 创建用户及授权

create user ilanni identified by ilanni default tablespace ilanni;

grant connect,resource,create any view to ilanni;

2. 创建导出目录及授权

create directory exp_dir as ‘d:\test’;

(这个创建先后没有顺序,可以在用户未创建前创建,也可以在用户创建后创建。但是d:\test目录必须首先已经存在,或者已经创建)

grant read,write on directory exp_dir to ilanni;

3. 创建导入目录及授权

create or replace directory wpdp_dir as ‘d:\test’;

(这个创建先后没有顺序,可以在用户未创建前创建,也可以在用户创建后创建。但是d:\test目录必须首先已经存在,或者已经创建)

grant read,write on directory wpdp_dir to ilanni;

4. 导出dmp文件

expdp ilanni/topo@127.0.0.1:/xe schemas=ilanni dumpfile=ilanni_expdp.dmp logfile=ilanni_expdp.log directory=exp_dir

5. 导入dmp文件,从一个用户expdp导出再impdp导入到另一个用户

5.1 如果想导入的用户已经在数据库中存在:

a. 导出用户

expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp

b. 导入用户

impdp user2/pass2 directory=dumpdir dumpfile=user1.dmp remap_schema=user1:user2 exclude=user full=y;

5.2 如果想导入的用户在数据库中不存在:

a. 导出用户

expdp user1/pass1 directory=dumpdir umpfile=user1.dmp

b. 导入用户

impdp system/passsystem directory=dumpdir dumpfile=user1.dmp remap_schema=user1:user2 full=y;

user2会自动建立,其权限和使用的表空间与user1相同,但此时用user2无法登录,因为此是user2是锁定状态,而且还要必须修改user2的密码(详见8解释)

impdp ilanni/topo@127.0.0.1:/xe directory=wpdp_dir remap_schema=topo:ilanni  remap_tablespace=ilanni_test:ilanni dumpfile=ilanni_expdp.dmp logfile=ilanni_impdp.log

其中remap_schema字段中的topo为原来数据库用户,ilanni为现在数据库用户。remap_tablespace字段中的ilanni_test为原来数据库的表空间,ilanni为现在数据库的表空间。

6. 查询已经存在的导入目录

select * from dba_directories;

clip_image001

7. 删除已经存在导入目录

drop directory directory_name;

clip_image002

8. impd导入时,可以创建用户

impdp命令在导入数据时,如果用户存在,则会自动创建该用户,因为expdp导出的dmp文件中包含了创建用户的脚本信息(包括密码,缺省表空间,临时表空间等)。

impdp自动创建用户有一个前提条件,就是需要首先创建用户的缺省表空间和临时表空间,如果缺省表空间或者临时表空间不存在,则自动创建用户会失败,导致导入数据的失败。

在执行impdp之前,必须要创建导入目录,如下:

create directory wpdp_dir as ‘ d:\test ‘;

 impdp system/system@192.168.24.249:/orcl directory=wpdp_dir remap_schema=coss:ilanni remap_tablespace=ilanni_test:ilanni  dumpfile=ilanni.dmp logfile=ilanni.log

该导入语句中coss是原来dmp文件原来数据库用户,ilanni为要创建的用户。这个执行完毕后,新建的用户ilanni还处于锁定状态,密码还要修改。而且该用户还有DBA权限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值