如何在不同的服务器上设置两个 MySQL 数据库以与字符串替换同步?

How to set up two MySQL databases on separate servers to sync with string replace?

我在两个单独的服务器 上有两个MySQL 数据库。两者都将托管相同的 CMS,但 一个将服务于一般访问者流量 而另一个 - 主控 - 供编辑访问。两个数据库的内容必须完全相同,但是由于两个服务器的域名不同,所以每次sync都应该执行一次字符串替换:从域 A,到域 B。

我发现 MySQL 复制是可能的,但是如何同步两个具有特定字符串的数据库总是替换为另一个特定字符串?

更新: 例如:

//Preset string to search:
"apple"

//Replacement string:
"orange"

//Edited data:
"Lorem ipsum dolor sit apple amet"

//Data sent to sync with other server:
"Lorem ipsum dolor sit orange amet"

由于您想使用复制以避免使用服务来填充 x 个数据库,因此您需要确定是否可以为复制数据库上的数据 inserts/updates 编写 mysql 触发器。我假设这是可能的。

如果是这样,您将为复制数据库的插入和更新操作编写触发器。激活触发后,您将 运行 一个过程,该过程将 运行 根据您的喜好对传入数据进行字符串替换,更改数据,并将其传递到复制的数据库中。

假设您有数据库 A(主)和 B(复制)。将数据 "something something apple something" 插入 db A,会将数据复制到 db B。此时,我再次假设,可以在对 db B 进行 "Insert" 操作时激活触发器 - 允许您编辑将插入到 db B 中的数据。在触发器内部,您可以调用一个过程,该过程将根据需要进行字符串替换,并将数据传递到 db B。