导入不同表空间的数据

以前在导入表空间的时候,为了保证表导入完成,需要先创建一个与数据来源相同的表空间名,这样造成很麻烦。在oracle 10g后新加了impdp和expdp两种数据泵,可以实现不同表空间数据的导入。

1、在源数据库需要导入的用户中创建directory,这个是必须有的。我的用户名和密码都是alarm

 

SQL> conn alarm/alarm;
SQL> create directory test as 'd:\dirc';

 2、使用expdp导出

 

 

expdp alarm/alarm@orcl schemas=alarm directory=test dumpfile=alarm1.dmp

 这时会在d:\dirc目录下生成所需的dmp文件和日志文件

如果要指定不导出某些表,可以用exclude属性

expdp alarm/alarm@orcl schemas=alarm directory=test dumpfile=alarm1.dmp exclude=table:\"in('sk_data')\"

3、在目标数据库用户中也创建directory,名字可以不同.

SQL> conn alarm/alarm;
SQL> create directory dump as 'd:\test';

 4、使用impdp导入数据

impdp alarm/alarm directory=dump dumpfile=ALARM1.DMP remap_schema=alarm:alarm remap_tablespace=ALARM:XCC

 remap_schema=来源用户名:目标用户名

remap_tablespace=来源表空间名:目标表空间名

5、导入后使用

SQL> select count(1) from tabs;

 查询表的数据是否一样

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值