【问题标题】:How to synchronize Oracle data with SQL Server如何将 Oracle 数据与 SQL Server 同步
【发布时间】:2017-04-15 15:34:33
【问题描述】:

一台具有唯一 IP 的机器上的 Oracle11g 数据库和另一台机器上的 SQL Server 2008 数据库。

Oracle 中的表 X 有一些列,与 SQL Server 中的表 Y 的列相同。

现在我想将X 中的列值与Y 中的列值同步,也就是说(可能是罗嗦!),当 X 中的值发生变化时,它是 立即 并自动更新 Y 中的值,无需在 SQL Server 中进行任何手动操作。

如何做到这一点!?

谢谢!!

【问题讨论】:

    标签: sql-server oracle sql-server-2008 oracle11g


    【解决方案1】:

    您可以通过 Oracle 网关和 Oracle 数据库中的数据库链接或通过 SQL Server 实例中的链接服务器链接这两个数据库。

    如果您真的想在每个数据库中拥有表的两个精确副本,而不是将其存储在一个位置并直接从两个数据库访问它,并且更新必须是即时的(ish 因为即时实际上仅在一个表场景),那么您需要使用触发器通过链接更新另一个表。

    【讨论】:

    • 不完全是每个数据库中表的副本!只是彼此共享一些(不是全部)字段!我只是不确定 Oracle 中的触发器是否真的可以更新 MSSQL 中的表。就在最近我读到了关于 Oracle Gateway 的东西,这需要时间!
    • 是的,触发器可以通过数据库链接发出更新或插入语句,这可以通过 SQL 网关(触发器不会知道或关心该部分)。网关确实需要一些努力来设置,但它们只不过是安装一个带有侦听器的新家,并添加一些额外的配置以将侦听器指向远程(在您的情况下为 SQL Server)数据库。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多