用于MySQL主从复制的HAProxy
作者:互联网
我们正在使用MySQL MASTER-SLAVE复制设置,一切正常.
目前所有加载(读/写)都将转到MASTER服务器.我们的应用程序具有99%的读取和1%的写入.
我们考虑过向主服务器和从服务器分配负载(只读取).所以我们考虑使用HAProxy将负载分配给两个MySQL服务器.
我们的要求是将所有写入重定向到仅主服务器,并将读取分配到主服务器和从服务器之间.
解决方法:
我已经为我的项目实现了相同的功能.
我在Ha-Proxy(LB01)后面有两个DB Server(DB01,DB02).我从我的应用程序中假设一个数据库命中了ha-proxy.在我的应用程序中,我将数据库查询分发为3307上的读取并写入3306端口.
在haproxy.cfg(配置文件HAPROXY)中有两个LISTENER:
listen mysql-cluster
bind *:3306
mode tcp
balance roundrobin
option mysql-check user mast_ha
server DB01 10.x.x.x:3306 check maxconn 100000
listen mysql-cluster-replica
bind *:3307
mode tcp
option mysql-check user mast_ha
server DB02 10.x.x.x:3306 check maxconn 100000
并通过制作两个jdbc模板从应用程序调用Distrubuted mysql,一个用于读取,另一个用于写入.
标签:mysql,master-slave,haproxy 来源: https://codeday.me/bug/20190830/1766173.html