我发现自己的情况是其他人必须在某个时候陷入困境。
我们公司运行一个内部基于MSSQL的数据库,然后我们的网站位于外部服务器上,目前运行MySQL。问题在于两个数据库需要越来越频繁地相互通信。
我们目前的解决方案涉及SSIS包,但它们是临时性的并且通常很慢。我们最终经常不得不在我们的实时生产服务器上删除表,然后从内部服务器重建它们。当然这会导致数据不一致,因此我们尝试在高峰时段之外执行这些操作。然而,这导致一些数据从MySQL传输到MSSQL的24小时延迟,然后再将24小时的延迟恢复到MySQL。这些都不是理想的。
我正在寻找的是一个解决方案,它允许我们的内部MSSQL服务器和任何可以放在Linux机器上的数据库之间进行复制,并且可以很好地与PHP配合使用。正如我所说,我们目前运行MySQL,所以我们偏好任何包含该解决方案的解决方案,但所有其他建议都会得到很好的接收。
我在某处读过PostgreSQL是一个vialbe解决方案,但我现在正在努力找到我读到的地方。我已经找到了一些可能有用的工具,例如DBMoto和Slony-I,有没有人在这种情况下有任何经验?
或者,我们是否只是简单地吠叫错误的树,我们是否应该尝试将MSSQL集成到我们的PHP环境中?
任何想法或建议都会感激不尽。
非常感谢
罗布
答案 0 :(得分:5)
我知道并且我用于此类工作的最佳解决方案是SymmetricDS。
SymmetricDS是一个异步数据复制软件包 支持多个用户和双向同步。
答案 1 :(得分:0)
您可以使用FreeTDS和mssql_ *系列函数(或基于其构建的类,或使用替代freetds的扩展)从PHP访问MSSQL服务器。我们将此用于管理应用程序,Linux / PHP网站与MSSQL数据库通信。