真实案例:有BLOB的表数据从测试库导入到正式库如何操作

公司开发人员提这样一问题,

测试环境有一张含有BLOB字段的A表。里面有20条数据。
正式环境A表有100条数据。
现在想把测试环境A表里的数据增量的导入到正式环境。怎么弄?

 

环境说明一下,

测试环境和正式环境都是oracle 10g for linux。

 

分析一下,

这个问题本质在于有BLOB字段。

 

(miki西游 @mikixiyou 文档 ,链接: http://mikixiyou.iteye.com/blog/1560950

 

解决方法,

我列了这样一个解决步骤,
1、将测试库A表,CTAS一下成一张新表,如B表。
2、将B表用exp导出,或者expdp导出。
3、将导出的文件数据导入到正式库上。
4、在正式库上,你就会看到B表数据了,是不,100条的那个。
5、在正式库上,将B表数据插入到A表上,这里插入有啥条件判断的,自己根据逻辑去处理一下。

其实这个步骤还是烦了点。得知测试库和正式库的A表数据是不重复的,那么连A表CTAS成B表的操作都不要做了。
在imp时加一个ignore=y或impdp时加 CONTENT=DATA_ONLY。

还有一点,切记。在正式库操作之前,备份一下A表。

一直觉得,开发人员学习一下expdp/impdp知识会有帮助,求人不予求己。

你觉得我说的对吗?


您可以参考下列文档:

expdp 和impdp在有条件时导出入数据

这是两份关于expdp和impdp使用总结。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值