[Oracle] Data Pump 详细使用教程(4)- network_link

[Oracle] Data Pump 详细使用教程(1)- 总览

[Oracle] Data Pump 详细使用教程(2)- 总览

[Oracle] Data Pump 详细使用教程(3)- 总览

[Oracle] Data Pump 详细使用教程(4)- 总览

[Oracle] Data Pump 详细使用教程(5)- 总览

expdp的network_link


我们知道,expdp默认是导出本地数据库,network_link的作用是导出远程数据库到本地服务器上,其步骤如下:

术语说明:
源数据库:远程数据库
目标数据库:本地数据库(即expdp客户端所在的服务器)

1. 在目标数据库端添加源数据库的连接字符串至tnsnames.ora:
source_db =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.15)(PORT = 1521))

    )

    (CONNECT_DATA =

      (sid = orcl)

    )

  )

2. 在目标数据库创建db link:
SQL>create public database link source_db_link connect to system identified by *** using 'test15';



Database link created.



SQL>select instance_name from v$instance@source_db;



INSTANCE_NAME

----------------

orcl

3. 在目标服务器执行expdp:
$ expdp system directory=dump_dir network_link=test15 tables=test.test dumpfile=test.dmp logfile=expdp_test.log

其中network_link等于第2步上创建的db link,dumpfile,logfile放在目标数据库的dump_dir

impdp的network_link


上面提到的expdp的network_link是把远程数据库导出至本地的dumpfile,而impdp更强大更方便,它可以直接把远程数据库导入至本地数据库,中间甚至没有dumpfile产生,其语法如下:
$ impdp system directory=dump_dir network_link=test15 tables=test.test logfile=impdp_test.log

上面语句直接把test.test表从源数据库导入至目标数据库,中间不产生dumpfile,到会产生logfile(logfile放在目标数据库端的dump_dir里)

 

你可能感兴趣的:(NetWork)