不落地資料匯入匯出
阿新 • • 發佈:2019-02-16
這種情況一般就是本機磁碟空間不夠,但是有些資料需要遷移。昨天就遇見這麼一個情況:
建立dblink:
匯出資料:
同時impdp 帶network_link 匯入
一朋友需要將一個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