这篇文章主要讲解了“数据库中expdp远程network_link导出的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“数据库中expdp远程network_link导出的方法是什么”吧!

很多时候,出于数据安全考虑,需要备份一些重要的业务数据,但这个时候服务器没有直接登录的权限,我们只能通过数据库用户名方式进行访问,这个时候可以考虑用exp,但exp毕竟是个旧版的工具,功能没有expdp那么全面,但由于expdp只能在服务端进行本地备份写入,受限比较大,这个时候可以考虑用expdp的network_link方式进行远程导出或直接导入,下面是这个方案的详细介绍:

解决方案:通过dblink实现远程数据的导入导出。

本地库创建dblink指向远程库。

createdatabaselinklink_ossconnecttodba_ftcidentifiedby******using'OSS';

本地库创建directory目录对象。

createdirectoryexpdp_diras'/home/oracle11g/expdp_dir/';

本地库创建数据泵导出参数文件。

viexp.par:userid=username/password//本地库的用户名密码,可用上面创建的dblink和directory目录。directory=expdp_dir//本地库创建的directory目录。dumpfile=gf_expdp.dump//dump文件名。logfile=gf_expdp.log//日志文件名。tables=depkf15.t_cp//要导出的表。query='"whererownum<1000001"'//导出条件,前100万行。network_link=gf_local//dblink名。

注意,这里有个小问题值得注意,tables=depkf15.t_cp,如果待导出表和登录用户不同,则这里需要添加导出的对象schema(用户),否则会报错。

1,执行导出命令。

expdp'"/assysdba"'network_link=link_ossdirectory=dir1dumpfile=om_order.dmptables=gdoss.om_order

impdp使用network_link直接导入
1,从源库直接复制用户到目标库。
建立从目标库连接源库的dblink,登录目标库使用下面语句

impdpsystem/passwordschemas=用户名network_link=dblink

2,也可以将源库作为目标库,创建连接自身的dblink

impdpsystem/passwordschemas=用户名network_link=dblinkremap_schema=用户名:新用户名

通过network_link方式直接将远程用户(schema)复制到本地!

感谢各位的阅读,以上就是“数据库中expdp远程network_link导出的方法是什么”的内容了,经过本文的学习后,相信大家对数据库中expdp远程network_link导出的方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!