我不确定这是否可行但我有 3 台服务器。
Server A, B and C
Server A has database A_dataBase, B_database
Server B has database A_dataBase, B_database and C_database
Server C has database C_database
目前服务器 A 和 B 同步完美。现在我想在服务器 B 和服务器 C 之间同步数据库 C_database。
服务器 B 有这个 my.cnf
###
server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = A_dataBase
binlog-do-db = B_database
relay-log = /var/log/mysql/slave-relay.log
relay-log-index = /var/log/mysql/slave-relay-log.index
#####
这是我在服务器 B 上运行的用于设置服务器 A 的命令
CHANGE MASTER TO MASTER_HOST = 'serverA_ip', MASTER_USER = 'username', MASTER_PASSWORD = 'userpassword', MASTER_LOG_FILE = 'mysql-bin.000007', MASTER_LOG_POS = 107;
现在我的问题是如何在服务器 C 和 B 之间设置 C_database 的同步?请记住,我已经在 A 和 B 之间进行了同步
谢谢
答案1
MySQL 多源复制使复制从属能够同时从多个源接收事务。Mysql 5.7.6 或更高版本支持此功能。这里有文档http://dev.mysql.com/doc/refman/5.7/en/replication-multi-source.html https://www.percona.com/blog/2013/10/02/mysql-5-7-multi-source-replication/