【DB宝59】 空间不足怎么办?别怕,数据泵之NETWORK_LINK来帮你!

0    3306    15

Tags:

👉 本文共约3168个字,系统预计阅读时间或需12分钟。

👉 背景:

近期公司有个项目,需要将一套AIX上的rac 11g,迁移到华为云上,数据量大概4T,停机时间2小时,目前最大问题是本地磁盘空间不足。起初,想到的是OGG或XTTS,XTTS没啥问题,最适合做这类迁移了。对于OGG来说,OGG初始化需要导出和导入,仍然需要临时的本地磁盘空间,当时把该方案直接pass掉了,后来回头想想,似乎可以使用network_link来解决这个问题。使用impdp+network_link导入完成后,再配置OGG实时同步,即可实现AIX到Linux的迁移。

一、数据泵之NETWORK_LINK

1、环境介绍

SOURCE DB(虚拟机)TARGET DB(虚拟机)CLIENT(笔记本)
EXP/IMP11.2.0.3.011.2.0.1.011.2.0.1.0
EXPDP/IMPDP11.2.0.3.011.2.0.1.011.2.0.1.0
HOST IP192.168.59.130192.168.59.128192.168.59.1
host 平台和内存RHEL 6.5 MemTotal: 2.6gwindows XP MemTotal: 2gwindows 8.1 MemTotal: 20g
DB VERSION11.2.0.3.011.2.0.1.0
ORACLE_SIDorclasmorcl
tnsnameorclasmorclxp

注意: 本实验所有的代码无特殊说明均在client客户端执行
图形如下:

2、imp和exp

👉 expdp属于服务端工具,而exp属于客户端工具,expdp生成的文件默认是存放在服务端的,而exp生成的文件是存放在客户端的

来验证exp和imp:
我们在client客户端执行:

而文件也的确是在本机的:

3、expdp不使用network_link

根据expdp的语法,我们执行如下脚本:

在服务器端查看可知,文件是存放在linux服务器端的:

而在这种情况下必须将exptable.dmp 拷贝到windows XP上的相应目录下才能使用impdp来进行导入,如下利用ftp下载:

将exptable.dmp放到windows XP下的虚拟机里:


然后再进行导入操作:

日志文件路径:

这样操作非常麻烦,那么如何将生成的文件放在目标数据库而不放在源数据库呢,答案就是在expdp中使用network_link选项。

4、expdp使用network_link

4.1、目标数据库创建dblink

4.2、client端或目标数据库执行

注意这里的连接标识符是orclxp,即连接到windows xp系统,是target库。

结果:

4.3、总结

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复