日期:2014-05-19  浏览次数:20761 次

高分求解!!!Oracle与SQL Server数据同步
一个是Oracle(9i)数据库,另一个是SQL Server(2000)数据库,
两个数据库的表结构不相同,需要同步其中的部分数据,并且是将Oracle的部分数据同步到SQL Server数据库中。

设想了以下几种方法:
1.进行数据库快照,实现同步;
2.写应用程式读取Oracle日志,然后解析日志,再重新组装SQL语句,操作SQL Server数据库;
3.比对需要同步的数据,再进行更新等操作。

但是遇到以下问题:
方法1.只试过从SQL Server同步到Oracle,没做过从Oracle同步到SQL Server。??
方法2.不知道怎样用Java解析Oracle日志??
方法3.好像不太现实。

各位有什么好的办法来实现吗?

请尽量写得详细些,或者能引用其它可用的贴子。谢谢!~~

------解决方案--------------------
是实时的还是定时的?
------解决方案--------------------
数据迁移没有弄过, 好像挺复杂的
帮你顶下
------解决方案--------------------
方法4 写个应用程序,oracle里写个存储过程,应用程序里调用oracle的存储过程再更新sqlserver
------解决方案--------------------
如果是实时的要考虑用webservice了或者Timer类+线程控制了
------解决方案--------------------
以前做过类似的
如果要同步的表不是很多,可以在Oracle上写存储过程或触发器等,再写一个中间程序,调用存储过程或触发后保存的信息,更新到sqlserver
------解决方案--------------------
1.oracle数据类型与MSSQL的数据类型不一致. 所以导出脚本再修改(放弃)

2.写程序查出来再同步过去吧.

3.用DTS.
------解决方案--------------------
通过java 应用程序 完全可以实现同步
定义临时表 包括需要同步的表名字段数据库名 控制表 包括各条记录操作状态 已更新 已删除 新增 等 
servlet定时扫描 控制表来达到同步的需求
我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html