Mysql2主从搭设2
发表于2017-10-16
很多情况下,出于性能和隔离的考虑,我们有若干台主DB,但由于服务器资源有限,我们可能只有一台备DB。我们知道,一个mysql客户端只能连接一个主DB,那么是不是意味着一台备DB只能为一台主DB备份呢?答案是否定的。
mysql支持多进程工作,也就是一台机器可以开启多个mysql实例。基于这个原理,我们可以在一台机器上,启动多个mysql进程,每个进程拥有独立的数据库集。从而实现一从多主的需求。
具体实现步骤:
(1)首先按照正常的主从同步进行配置好主DB,如果你已经做了这个工作,可以跳过这一步。
1. log-bin和server-id都要设置好,这是基础;
2. 然后使用grant replication slave让所有的主DB为备DB赋予权限:grant replication slave on *.* to '【自行设定的用户名】'@'【备DB的IP地址】' identified by '【密码】';
然后使用LOCK TABLES锁定主表,把要同步的数据库复制到备DB上,使用SHOW MASTER STATUS记下此时的file和positon: