三从MySQL 双主三从主从复制实践(mysql两主)
三从MySQL双主三从主从复制实践
MySQL主从复制是一种常用的数据同步技术,使用它可以实现数据的高可用、实时同步和读写分离。一般情况下,MySQL双主三从主从复制的结构如下图所示:
![img](02100323_wjghmkjz1e3.jpg)
MySQL双主三从主从复制实践步骤如下:
1、搭建MySQL双主三从结构
首先,需要搭建MySQL双主三从结构。可以安装6台MySQL服务器,三台为主库,三台为从库,并连接形成一个结构。
2、主从同步的配置
在Master 上,需要在my.cnf文件中设置主从同步的相关参数,例如下面的代码:
log-bin=mysql-bin
server-id=1 relay-log=slave-relay-bin
#realy 的binlog的名字,因为双主的数量多了,这里建议用slave-relay-bin加上 int类型的编号,#它对统一slave会有所帮助
report-host=slave1 IP skip-slave-start
在Slave上,需要执行以下脚本:
CHANGE MASTER TO MASTER_HOST='主机IP',MASTER_USER='repl',MASTER_PASSWORD=' ****** ';
start slave;
show slave status \G;
3、监测复制状态
为了检查复制的状态,可以执行“show slave status \ G”语句,来确定Slave的运行在当前的状态,其中:
• Slave_IO_Running:表示读取Master上bin-log 事件并同步到Slave的状态,如果为Yes,表示正常;
• Slave_SQL_Running:表示将Master上bin-log 中的事件执行到Slave端是否正常,如果为yes,表示正常;
• Seconds_Behind_Master:表示Slave端统计落后Master端多少秒,一般这个时间会比较小,小于等于1分钟,如果大于1分钟,可能是网络不通导致的;
• Slave_SQL_Running_State:表示Slave端正在处理的是哪一步工作,如果为Yes,表示正在复制数据;
MySQL双主三从主从复制能够极大地提高MySQL实例的高可用性,可以满足企业对数据安全的要求,因此,实践MySQL双主三从主从复制是十分必要的。