使用imp/impdb和管道实现数据库的快速迁移

A、使用impdp和network_link

1,在目标数据库创建 db link
create public database link hrtestdb  connect to system identified by 1234 using 'hrtestdb';

impdp system/1234 network_link=hrtestdb schemas=BMCCZHPUSR;

2,在目标库创建相关表空间,防止导入报错

3,impdp导入

不同用户之间的导入使用remap_schema参数
impdp wj/wj#201209  network_link=hrtestdb schemas=BMCCZHPUSR remap_schema=BMCCZHPUSR:wj

B、使用imp和管道技术
如果涉及9i及以下版本,没有expdp命令,只有export命令,就需要手工创建管道来实现

具体过程如下
1,新建管道

mknod /tmp/exp.pipe p

2,exp导出数据,此时命令会停止,等待imp命令
exp system/1234  file=/tmp/exp.pipe tables=BMCCZHPUSR.RESUME_STUDY

3,本机上运行imp命令,导入数据到目标数据库
imp wj/wj@epmdb file=/tmp/exp.pipe   BUFFER=159715200 IGNORE=Y   COMMIT=Y FROMUSER=BMCCZHPUSR touser=wj;

4,删除管道文件
rm –rf /tmp/exp.pipe

相关推荐