SQL Server到Oracle数据同步的最佳实践

我有一些SQL Server数据库中的表,我想使其可用于Oracle数据库。

请记住,数据完整性是重中之重,保持数据同步的最佳实践是什么?

这是DTS / SSIS常用的东西。 但是,一个主要的警告是,用于加载到Oracle数据库的开箱即用组件的行数超过了大约1000(如果您真的需要非常快的加载),那么行数会慢得令人无法接受。 如果我经常这样做(例如,每隔一小时左右),我可能会使用SSIS来创build一个包,但是我的加载到Oracle将通过SQL * Loader(它快了很多)。 至于数据完整性方面,假设你有相对直接的外键关系,使用SSIS来validation数据并不困难。 如果你有极其复杂的完整性约束,那么最好在目标数据库上创build一个存储过程,然后将它加载到临时表中(这是Oracle EBS使用的方法)根据定义,这是一个最佳实践)。

我们也有类似的情况,并使用Golden Gate软件。

http://www.goldengate.com

这是非常可靠的,保持事务的完整性,可以在服务器停机的时候继续

它的开销也很低,因为它尾随日志文件并重build事务,而不是在源数据库上执行查询。