mysql 负载均衡完美解决方案V1
环境: mysql 5 ubuntu10
04 x86_64 mdb1 eth0 192
11 mdb2 eth0 192
12 sdb1 eth0 192
21 sdb2 eth0 192
22 sdb3 eth0 192
23 sdb4 eth0 192
24 haproxy eth0 192
10 (mdb vip write) eth1 192
20 (sdb vip read) 说明:mdb vip 用于DB 的写,sdb vip 用于DB 读,实现读写分离和负载均衡,带故障检测自动切换 2
架构图 web1 web2 web3 | | | —————————- | haproxy(lb db write/read) | ———————————- | | mdb1 mdb2 | | ————– —————- | | | | sdb1 sdb2 sdb3 sdb4 说明: 1)mdb1 和mdb1 配置成主-主模式,相互同步,通过haproxy 提供一个 lb 的写ip 2)sdb1 和sdb2 配置为 mdb1 的从,sdb3 和sdb4 配置为 mdb2 的从 3)sdb1,sdb2,sdb3,sdb4 这 4 台从库,通过haproxy 提供一个 lb 的读ip 4) 当 mdb2 停止复制,mdb1 为主库,haproxy 停止发送请求到 mdb2 和sdb3,sdb4 5) 当 mdb1 停止复制,mdb2 为主库,haproxy 停止发送请求到 mdb1 和sdb1,sdb2 6) 当 mdb1 和mdb2 同时停止复制,这时 2 台主库变成readonly 模式,数据库不能写入 7)当 mdb2 offlin