设为首页 收藏本站
查看: 531|回复: 0

[经验分享] 基于spring调用ruby进行oracle数据间的迁移

[复制链接]
YunVN网友  发表于 2016-8-13 07:20:34 |阅读模式
写了一个小玩意,假想的需求就是在两个数据库之间进行数据的迁移。当然两个数据库中的表结构会存在不同,比如想把A库里的两个表的数据导入到B库里中的一个表里,或者把很复杂的一个查询结果导入到新的库里。如果相同的表的话,完全可以exp/imp.

大概的思路是利用oracle的sqlplus调用一个自己手写的sql,把sql的查询结果生成的数据保存起来,然后,调用sqlldr,利用控制文件,插入到新的库里. 当然我的想法是利用spring和jruby来调用一个ruby来实现。
这种导入导出的速度是我看重的。


项目里有一个银行托收返盘文件,到时候需要到进入库,我现在的想法也是利用这种方式来导入,我想要的是执行的效率。不知道是不是能实现,坛子里的人有这么做过的吗?麻烦通告一声这么做是不是可行?


PS:上传的文件目录说明

control       文件夹下放着的是控制文件,根据自己的需要添加自己的控制文件
log           文件夹下会保存使用sqlldr导入数据时的日志
outputfile    文件夹下保存生成数据的文本文件。这些文件最终会被导入新库
outputsql     文件夹下会生成一个sql执行的中间文件,无需关心.
sql           文件夹下放着的是生成outputfile文件夹下的数据sql,可以自行修改sql。但是需要注意sql的  格式与写法

env_oracle_input.bat       导入数据库的 用户名/密码@sid
env_oracle_output.bat      导出数据库的 用户名/密码@sid
sqlldr_exp.bat             导出批处理,可以导出多个收起来sql查询结果
sqlldr_imp.bat             导入批处理.
transfer.rb                调用sqlldr_exp.bat 和 sqlldr_imp.bat两个批处理程序.

没装ruby的可以自己手动调用 sqlldr_exp.bat 和 sqlldr_imp.bat 进行测试。


PSPS:在linux上跑的shell没写,spring调用也没写。不过都不影响在windows下体验一下,呵呵。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-257103-1-1.html 上篇帖子: oracle数据库连接(databaselink)的两种方法 下篇帖子: Oracle数据库中灵活管理用户表空间配额
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表