以下に示す 3 つの Mysql ノードがあります。
Master Address: 192.168.1.77:3306
Slave1 Address: 192.168.1.76:3306
Slave2 Address: 192.168.1.69:3306
バージョン 0.8.3 の mysql-proxy を 192.168.1.67 にインストールした後、以下の構成を作成します。
[mysql-proxy]
admin-username=proxy
admin-password=proxy
admin-lua-script=/local/software/mysql-proxy/lib/mysql-proxy/lua/admin.lua
proxy-read-only-backend-addresses = 192.168.1.76:3306,192.168.1.69:3306
proxy-backend-addresses=192.168.1.77:3306
proxy-lua-script=/local/software/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
log-file=/local/software/mysql-proxy/log/mysql-proxy.log
plugin-dir=/local/software/mysql-proxy/lib/mysql-proxy/plugins
plugins=proxy,admin,debug,replicant
log-level=debug
keepalive=true
編集したファイル: rw-splitting.lua
min_idle_connections = 1,
max_idle_connections = 2,
次に、次のように mysql-proxy を開始します。
./bin/mysql-proxy --defaults-file=mysql-proxy.cnf
プロキシにログオンします。
mysql -uproxy -ppassword -P4040 -h192.168.1.67
そして、select sqlを何度も実行して別のmysql-proxy 4040ウィンドウを開くと、ログから、すべてのselect sqlクエリが76の同じサーバーに送信されることがわかりましたが、76をシャットダウンした場合にのみ送信されますスレーブ 69 へのクエリ。ロード バランスが機能しない理由がわかりません。間違いを犯した場所はありますか? 前もって感謝します。