这种情况一般就是本机磁盘空间不够,但是有些数据需要迁移。昨天就遇见这么一个情况:
一朋友需要将一个400GB的日志表从10g数据导入到11g中,但是因为10g数据库所在主机磁盘空间不够所以才想不落地方式导出导入
这里给大家介绍两种方式:
1、network_link
2、pipe
先说第一种方式,需要配置tnsnames.ora 和创建dblink:
zbdba= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = zbdba)(PORT = 1521)) ) (CONNECT_DATA = (SID = zbdba) ) )
创建dblink:
CREATE DATABASE LINK <database link name> CONNECT TO <remote database user name> IDENTIFIED BY <remote database password> USING '<tnsname connect to remote>'
导出数据:
impdp zbdba/zbdba network_link=zbdba_link remp_schema=source_schema:target:shcema remap_tablespace=source_tablespace:target:tablespace
同时impdp 带network_link 导入
第二种方法:
source: mknod /tmp/exp_pipe p target: mknod /tmp/imp_pipe p 配置两个机器的互信 dd if=/tmp/exp_pipe | ssh 192.168.56.42 dd of=/tmp/imp_pipe 然后打开另外一个窗口进行导入: exp zbdba/zbdba file=/tmp/exp_pipe log=zbdba.log tables=zbdba
注意第一种方法在指定多个表的时候可能会出现bug
时间: 2024-10-13 16:21:22