一、下載mysql
https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-2.0.4-linux-glibc2.12-x86-64bit.tar.gz
二、安裝linux
tar -xzvf mysql-router-2.0.4-linux-glibc2.12-x86-64bit.tar.gz -C /usr/local/ ln -s /usr/local/mysql-router-2.0.4-linux-glibc2.12-x86-64bit /usr/local/mysqlrouter export PATH=/usr/local/mysqlrouter/bin/:$PATH
三、測試安裝是否成功sql
mysqlrouter --help
四、配置mysql-router負載均衡
/usr/local/mysqlrouter/etc/mysqlrouter.cnfsocket
[DEFAULT] # 定義日誌目錄 logging_folder = /var/log/mysqlrouter [logger] # 定義日誌等級 level = INFO # 一個高可用的標籤 [routing:failover] bind_address = 0.0.0.0 bind_port = 7001 max_connections = 1024 # 目前就支持兩種 : read-write 和 read-only # read-write:用於高可用,用於可讀可寫 # read-only:用於負載均衡,只讀 mode = read-write # 實際轉發的地址 # 第一個socket若是可用,就一直會使用第一個 # 若是第一個socket沒法鏈接了,纔會鏈接到第二個socket destinations = 192.168.192.139:3306 # 一個用於複雜均衡的標籤 [routing:balancing] bind_address = 0.0.0.0 bind_port = 7002 max_connections = 1024 # 用於負載均衡的只讀模式 mode = read-only # 這裏的兩個socket是輪詢用的 destinations = 192.168.192.136:3306, 192.168.192.138:3306
5.建立相關目錄測試
mkdir -pv /var/log/mysqlrouter
6.啓動spa
mysqlrouter --config /usr/local/mysqlrouter/etc/mysqlrouter.cnf &
7.測試日誌
mysql -h192.168.192.135 -uadmin -pAbc_123456 -e "select @@server_id" -P 7002
mysql -h192.168.192.135 -uadmin -pAbc_123456 -e "select @@server_id" -P 7001
8.備註code
按照配置,讀寫操做在master,讀操做輪詢到slave1和slave2
若是master宕機,master則不能寫入,master服務重啓後,須要也重啓下MySQLrouter