mysql讀寫分離_MySQL使用Mycat完成高可用和讀寫分離
阿新 • • 發佈:2020-12-10
技術標籤:mysql讀寫分離
大家好,我是anyux。本文介紹MySQL使用Mycat完成高可用和讀寫分離
Mycat高可用和讀寫分離
節點關係說明
讀寫主機引數server_id備註writeHosturl="192.168.255.117:3307"7寫操作(主寫節點)readHosturl="192.168.255.117:3309"9讀操作writeHosturl="192.168.255.118:3307"1187預設讀操作(stand by writeHost)readHosturl="192.168.255.118:3309"1189讀操作
當主寫節點宕機後,stand by writeHost節點隨機準備替換為主寫節點
<?xml version="1.0"?> select user()
重啟mycat
mycatrestart
檢查mycat
mysql-uroot-p123456-h127.0.0.1-P8066-e"select @@server_idGselect @@server_idGselect @@server_idG;begin;select @@server_idG;commit;begin;select @@server_idG;commit;"
關閉主寫節點
systemctlstopmysqld3307
檢查資料庫狀態
mysql-uroot-p123456-h127.0.0.1-P8066-e"select @@server_idGselect @@server_idGselect @@server_idG;begin;select @@server_idG;commit;begin;select @@server_idG;commit;"
可以看到,寫操作切換到server_id:1187,讀操作只有server_id:1189。說明舊主寫節點宕機後,其對應的主從複製關係已停止,切換到另一個主從複製關係
啟動舊寫資料庫節點,會自動加入到Mycat叢集中
systemctl start mysqld3307
檢查資料庫狀態
mysql-uroot-p123456-h127.0.0.1-P8066-e"select @@server_idGselect @@server_idGselect @@server_idG;begin;select @@server_idG;commit;begin;select @@server_idG;commit;"
恢復後,舊的寫節點變成stand by writeHost