1

我想知道是否有任何简单的方法可以使方案在两个不同的 MySQL 集群中保持一致。除了经典复制之外,我还想要一个特殊的“复制”,它可以在另一个集群(即该集群的主节点)上重现所有 DDL 查询(CREATE、ALTER、DROP、...)。

我不需要复制实际数据。

有没有人做过或尝试过这样的事情?

4

2 回答 2

1

您可以根据执行查询的数据库过滤 MySQL 中的复制。但是,这并不妨碍您在其他数据库中进行更改!所以你可以这样做;

USE ddl_repl_db;

ALTER TABLE other_db.foo ADD COLUMN <etc>

这取决于您正确配置服务器。我已经有一段时间没有设置 MySQL 复制了,但是 IIRC 你既可以过滤从主服务器发送的用于复制的内容,也可以过滤你在从服务器上接受的内容。

于 2012-04-11T10:37:27.823 回答
0

老了,但搜索量仍然很高。
因此,在您的 DDL 副本上,将所有表引擎设置为BLACKHOLE

于 2016-01-06T15:50:38.437 回答