我们知道 MySQL读和写在性能方面的开销区别是较大的,一般来说 服务器顶着20%写的压力,另外80%的压力来自读,当然这也得看实际业
我们知道 MySQL读和写在性能方面的开销区别是较大的,,一般来说 服务器顶着20%写的压力,另外80%的压力来自读,当然这也得看实际业务情况。
这篇文章准备配置一主三从,其实多少从没什么关系,一主多从其实是一主一从的延伸,因为从库之间是没有任何通信的,具体使用哪种方式看带宽负载和具体流量。
MySQL的主从replication原理其实就是Master不断地写二进制日志,Slave去读取日志,按照里面的SQL记录去执行!如下图:
Ubuntu下Nginx做负载实现高性能WEB服务器5---MySQL主主同步
生产环境MySQL主主同步主键冲突处理
MySQL主从失败 错误Got fatal error 1236
MySQL主从复制,单台服务器上实施
搭建MySQL代理服务器实现读写分离+主从同步
MySQL 5.5 主从双向同步
MySQL 5.5主从同步排错
MySQL主从复制异步半同步实例
MySQL主从配置是与生俱来的功能,只需做简单配置即可,好了,废话少说,开始吧!
我的环境是这样,四台机器都在Vmware上,都使用桥接,用dhcp直接获取动态IP
Master:192.168.83.61
Slave1:192.168.83.87
Slave2:192.168.83.88
Slave3:192.168.83.89
四台机器的MySQL版本都是MySQL 5.5.40
第一,配置Master
vi /etc/my.cnf
server-id = 61
log-bin=mysql-bin
binlog-do-db=test //需要同步的数据库
binlog-ignore-db=mysql //被忽略的数据库
binlog-ignore-db=information-schema //被忽略的数据库
在master上为三台slave添加一个同步账号
mysql> grant replication slave1 on *.* to 'slave1'@'192.168.83.87' identified by 'slave1';
//在slave1上登陆成功
mysql> grant replication slave on *.* to 'slave2'@'192.168.83.88' identified by 'slave2';
//在slave2上登陆成功
mysql> grant replication slave on *.* to 'slave3'@'192.168.83.89' identified by 'slave3'; <p>//在slave3上登陆成功</p> <p>保存后重启Mysql服务</p> <p>service mysqld restart</p> <p>然后在mysql命令行模式下用</p> <p>mysql> show master status\G;</p> <p>*************************** 1. row ***************************<br>File: mysql-bin.000001<br>Position: 106<br>Binlog_Do_DB: test<br>Binlog_Ignore_DB: mysql,information-schema<br>1 row in set (0.00 sec)</p> <p>更多详情见请继续阅读下一页的精彩内容: </p><p align="center"><img src="/linuxfile/logo.gif" alt="linux"></p>