(一)版本: 1.作業系統: RHEL5.5
2.mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz
(二)安裝1. 將mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz 直接解壓縮。 (注釋:沒有下載源碼自行編譯,原因:太麻煩了。0.8.1版本需要pkg-config,glib2,等等,系統內建的版本都太低了, 重新編譯這些包,很麻煩)2. 添加環境變數:#vi /etc/profile檔案末尾添加PATH="/usr/local/mysql-proxy-0.8.1/bin:$PATH"然後儲存#source /etc/profile3.新增設定檔: #vi /etc/my-proxy.cnf內容:[mysql-proxy]
daemon=true --運行方式
keepalive=true --進程異常退出後,自動重啟 user=mysql --mysql-proxy 啟動並執行使用者
admin-address=192.168.128.130:4041 --管理地址及連接埠
proxy-address=192.168.128.130:4040 --後端伺服器訪問地址及連接埠
admin-username=admin --訪問系統管理使用者名
admin-password=123456 --訪問管理密碼
admin-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/admin-sql.lua --管理lua指令碼
proxy-read-only-backend-addresses=192.168.128.140:3306,192.168.128.141:3306 --唯讀伺服器(slave)
proxy-backend-addresses=192.168.128.130:3306 --後端讀寫伺服器(master)
proxy-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/rw-splitting.lua --讀寫分離指令碼
log-file=/usr/local/mysql-proxy-0.8.1/log/my-proxy.log --記錄檔位置
log-level=debug --日誌等級
#同樣,可以將上述設定檔的內容,全部寫到啟動命令列中,如:#mysql-proxy
daemon=true
keepalive=true
user=mysql
admin-address=192.168.128.130:4041
proxy-address=192.168.128.130:4040
admin-username=admin
admin-password=123456
admin-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/admin-sql.lua
proxy-read-only-backend-addresses=192.168.128.140:3306
proxy-read-only-backend-addresses=192.168.128.141:3306
proxy-backend-addresses=192.168.128.130:3306
proxy-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/rw-splitting.lua
log-file=/usr/local/mysql-proxy-0.8.1/log/my-proxy.log log-level=debug4.mysql-proxy --help-all --查看所有的協助命令
5.啟動mysql-proxy
#mysql-proxy --defaults-file=/etc/my-proxy.cnf
關閉mysql-proxy
#killall -9 mysql-proxy
通過proxy串連資料庫
#mysql -h 192.168.128.130 -u xxx -pxxx -P4040
6.測試
表結構:create table mytest (id int,name varchar(30),address varchar(30),job varchar(30));
插入資料庫:使用隨機產生的字串,插入10萬條
結果:通過proxy,耗時: 41.5310630798秒
直接mysql,耗時: 33.9793388844
差別不是很明顯,不知道是不是資料量不夠大的原因。