Oracle跨库同步数据

业务需求:测试库数据全量同步到正式库
【方法一】:
把oracle查询的数据导出为sql文件,执行sql文件里的insert语句,如下:
第一步,导出sql文件:
在这里插入图片描述
第二步:用PL/Sql Developer 连接另外一个oracle数据库,打开这个sql文件,全选所有insert语句,执行所有插入sql语句即可:
在这里插入图片描述
这种方法试用于插入大多数的数据库,无论是oracle数据库还是sql server数据库都可执行这个sql文件(全是insert语句)。

缺点是:当数据量大的时候,oracle数据库执行这些insert语句,效率会很低。

于是,接下来介绍第二种导入数据的方法,即:导出/导入CSV文件。

【方法二】:
第一步,在Pl/Sql Developer查询窗口查询数据,导出成CSV文件:
sql导出界面
导出的csv文件如下图:
在这里插入图片描述
第二步,把这个csv文件里的数据导入到另外一个数据库里,

用PL/Sql Developer 连接另外一个oracle数据库,

菜单-工具-文本导入器:在这里插入图片描述第三步,点击“文本导入器”窗口里,点击导入按钮:

在这里插入图片描述

第四步,选择导入CSV文件:
在这里插入图片描述
导入后,界面如下:
在这里插入图片描述第五步,选择“到Oracle的数据”选项卡,点击下拉框选择“所有者”,点击下拉框选择要导入的表,选择“覆盖重复”,点击“导入”按钮:

在这里插入图片描述
导入成功入下图:
在这里插入图片描述
引用:https://www.cnblogs.com/527289276qq/p/4555659.html
感谢原作者。

【遇到的问题】:

  • 1.覆盖导入跟忽略重复是一样的结果呢?暂时先删除原表数据再重新导入的。
    2.同步数据要考虑实际的业务,可能造成的影响,比如同步的数据表使用序列,测试库和正式库的序列值可能已经不一致,会对存量数据造成影响。
    3.同步前要先进行测试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值