SERVER1 = 购物车 1
SERVER2 = 购物车2
SERVER3 = 报告
我目前有 3 台服务器,2 台是购物车(SERVER1 和 SERVER2),1 台用于报告和手动输入订单(SERVER3 ).
在 SERVER3 我有一个手动输入的订单表(这个表比 SERVER1 和 SERVER2上的订单表有更多信息strong> 因为在下订单后进行了一些处理。)。我想以某种方式将 SERVER1 和 SERVER2 上的订单表中的信息即时导入到 SERVER3,以便这些订单可以遵循相同的过程。
**
以前
**
我们以前使用 CSV 将其导入到 SERVER3 订单表(将新行下载到 CSV,然后使用 PHP/MySQL)
**
想法
**
1)
简单地在 SERVER1 和 SERVER2 上添加 PHP/mySQL 代码以同时在 SERVER3 上更新此表的最简单方法是否可行?我宁愿不这样做,因为我希望这个过程快速且独立。如果由于某种原因 SERVER3 出现故障,我不希望它影响 SERVER1 和 SERVER2 上的订购。
2) 我考虑过使用触发器,但它们只适用于现有的 mySQL 连接。我从 SERVER1 和 SERVER2 复制数据以在 SERVER3 上分离 mySQL 实例(mySQL 只能有 1 个主服务器,因此有多个实例)但是那里有什么方法可以利用 mySQL 触发器来更改端口并以这种方式进行更新?
3) 我唯一能想到的另一件事是创建一个 PHP cronjob 来检查这些表,但这确实不会即时发生,但只要我运行 cronjob 就可以了。
也许我只是想太多了,我们将不胜感激!
最佳答案
也许你可以使用触发器,但是写入/更新到一个FEDERATED
引擎表中,它并不漂亮,但可以解决你的问题。
关于 FEDERATED
引擎的更多信息 here ,该引擎创建一种远程服务器表的本地表。
关于php - 在插入到 SERVER1 或 SERVER2 数据库表时触发对 SERVER3 数据库表的不同插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8360075/