MySQL的MHA+keepalived+负载均衡+读写分离架构
专注于为中小企业提供成都网站设计、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业丰南免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
MHA只是保证数据库一致性,对于实现应用访问的固定入口、读写分离、负载均衡需要keepalived、中间件、lvs来解决了。
一、如何手动恢复二进制日志,
show master logs //查看所有的二进制日志
flush logs;//刷写日志
mysqlbinlog /data/mysql/mysql-bin.000002 //查看文档内容
注意:假如本地 mysqlbinlog 无法识别 binlog 配置中的 default-character-set=utf8,
所以可以在命令中加上了 –no-defaults才起作用,大家引以为鉴。
恢复:
mysqlbinlog –no-defaults –stop-datetime=’2017-04-11 09:48:48’/data/mysql/mysql-bin.000001 | mysql –uroot –p123456
mysqlbinlog /var/lib/mysql/mysql-bin.000006 --start-position=351 --stop-position=632 | mysql -uroot -pwolf -h292.168.1.106
二、MHA+keepalived 实现真正高可用
参考:http://blog.csdn.net/yabingshi_tech/article/details/55509269
keepalived通常是用来防止单点故障造成集群失效,本例使用keepalived主要是两个作用,一个是防止单点故障,一个是用两个vip做读写分离,关于配置继续看步骤3。
读写分离
读写分离有两种方式,一种是用keepalived,对外使用两个ip,分别对应写vip,读vip;一种是用中间件,对外就是一个ip。