如何安全地将本地 SQL 数据库中特定表中的选定数据与远程 MySQL 数据库同步

How to securily Synchronize selected data from specific tables in a local SQL database with a distant MySQL database

我是一个迷失在"windows"之间的Linux人!

我有一个将数据保存到本地 Windows SQL 服务器的 ERP。出于某种原因,我们需要定期同步来自特定表的一些选定数据,以及托管在远程 Windows 服务器上的 MySQL 实例。知道远程 MySQL 是由 Zend2 Web 应用程序操作的。

根据我的了解和理解,我建议的原生选项如下:

在远程服务器上使用 PHP 创建一个 API,并在本地计算机上通过一个简单的脚本使用 PUT 或 POST 提交我的数据,在这种情况下,我需要以下:

这个方案看起来很复杂,层数多,出问题的概率很大,所以我肯定还有其他方法可以做到。

一个 Windows 人推荐 BizTalk 作为处理本地部分作业的中间件,使用正常 API 或与远程服务器的任何其他低级交互。

他还建议使用 Windows 任务作为定期触发器。

您认为我的解决方案是最优的吗?如果不是,你有什么建议?!

我会看看像 DBSync 这样的第三方工具(不是认可)我过去使用过几种不同的 1 路和 2 路同步工具,它们在不同的数据库之间创建(主从)复制服务。我确信也有一些开源解决方案,但许可工具可能最适合与 MSSQL 一起使用 MySQL。

http://download.cnet.com/DBSync-for-MSSQL-and-MySQL/3000-10254_4-10784422.html

我会考虑使用 SSIS 包,因为它既可以安排又可以连接到 MySQL。

BizTalk 是一个选项,如果您已经有了它,那么仅此一项工作就相当昂贵,除非您要使用它来满足更多的集成要求。 BizTalk 能够定期轮询数据库,因此您可以使用它来代替计划任务。

在上述两种情况下,您都不需要配置本地 PHP 服务器。