MySQL复制(3个主服务器,1个从服务器)

| 我目前正在设置mySQL复制。 我需要从三个地方获取数据。 例如,我有 需要此数据 服务器1-数据库1 服务器2-数据库2 服务器3-数据库3 此处存储数据 服务器4-数据库4 我需要此用于报告目的。 我读过您不能再连接一个以上的主机。因此,我要尝试一种“主链”拓扑,因为我认为我了解这种情况 因此数据流将如下所示 服务器1->服务器2->服务器3->服务器4 server2和server3将具有用于复制数据库的黑洞存储引擎,因此我们实际上并未将信息存储在这些服务器上,但是该信息仍记录在二进制日志中,因此所有语句都将进行细化以使server4保持最新状态。 我理解正确吗?     
已邀请:
这会起作用,但不是最好的实现,并且将来可能会给您带来问题。在server1或server2上添加新表之前,必须在下游服务器上创建“ 0”表,否则将得到真实表。我猜您可以通过编写一个脚本来解决此问题,该脚本每天晚上在server2和server3上运行,以查找任何非黑洞表并运行
ALTER TABLE
以将它们修改为
BLACKHOLE
表。 您是否需要更新报告数据?如果不是这样,我建议您放弃整个想法,并根据需要定期将数据转储拉到server4中。 编辑:(第二天)经过一番思考,我认为如果这是我,我可能会考虑在server4上运行三个独立的MySQL实例,每个实例作为其中一台服务器的直接从属。 使用这种方法,没有复制链,复制设置非常简单/正常,每个数据库对都是独立的。 运行多个MySQL实例非常容易且相当正常,甚至还有一个名为mysqld_multi的工具将帮助您进行设置。     

要回复问题请先登录注册