「这是我参与11月更文挑战的第1天,活动详情查看:2021最后一次更文挑战」
📚 前言
数据泵(EXPDP)异机导出是日常工作中经常使用的技能,但是数据泵是基于服务端执行导出的,有些用户无法登录服务端主机,因为无法使用该方式进行的导出。
因此,Oracle提供了 network_Link 参数,使用dblink远程导出的方式来实现!
实战演示
本文通过实战演示如何配置以及使用数据泵(EXPDP)异机导出。
1、配置TNS
配置dblink建议首先配置 TNS解析:
1 | bash复制代码##配置tnsnames.ora |
2、创建数据泵导出目录
由于数据泵导出需要指定目录,因此需要创建导出目录:
1 | bash复制代码##创建导出目录 |
3、创建DBLINK
上述准备工作做好之后,创建 dblink:
1 | bash复制代码##创建ORCL的dblink用来传输dump到本地 |
4、导出角色
执行导出命令,导出数据库所有角色:
1 | bash复制代码--远程导出角色 |
5、导出指定用户,排除部分表
执行导出命令,导出数据库指定用户:
1 | bash复制代码##编写expdp导出命令脚本 |
注意:这里的system密码是目标端数据库的密码。
6、导出结果
执行完导出后,导出结果如下:
1 | bash复制代码Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is: |
当然,使用该方式仍有一些限制:
限制:
1. 带有long数据类型的表不能在expdp 加NETWORK_LINK时被导出。
2.带有object_type数据类型的表不能在expdp 加NETWORK_LINK时被导出。
3. 在expdp 加NETWORK_LINK时,不能导出分区表中的某个分区。
参考文献:
Export/Import DataPump Parameter VERSION - Compatibility of Data Pump Between Different Oracle Versions [Video] [ID 553337.1]
如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力,技术交流可以添加公众号:Lucifer三思而后行~
本文转载自: 掘金