標籤:export mysql local
mysql-proxy:192.168.20.109
master: 192.168.20.135
slave;192.168.20.137
2.下載msql-proxy:wget http://cdn.mysql.com/Downloads/MySQL-Proxy/mysql-proxy-0.8.2-linux-glibc2.3-x86-64bit.tar.gz
useradd -g mysql-proxy -s /sbin/nologin
tar zxvf mysql-proxy-0.8.2-linux-glibc2.3-x86-64bit.tar.gz -C /usr/local
mv /usr/local/mysql-proxy-0.8.2-linux-glibc2.3-x86-64bit /usr/local/mysql-proxy
export PATH=$PATH:/usr/local/mysql-proxy/bin/
echo "PATH=$PATH:/usr/local/mysql-proxy/bin" >> /etc/profile
3.查看mysql-proxy --help
--help-all :擷取全部協助資訊;
--proxy-address=host:port :代理服務監聽的地址和連接埠;
--admin-address=host:port :管理模組監聽的地址和連接埠;
--proxy-backend-addresses=host:port :後端mysql伺服器的地址和連接埠;
--proxy-read-only-backend-addresses=host:port :後端唯讀mysql伺服器的地址和連接埠;
--proxy-lua-script=file_name :完成mysql代理功能的Lua指令碼;
--daemon :以守護進程模式啟動mysql-proxy;
--keepalive :在mysql-proxy崩潰時嘗試重啟之;
--log-file=/path/to/log_file_name :記錄檔名稱;
--log-level=level :記錄層級;
--log-
use
-syslog :基於syslog記錄日誌;
--plugins=plugin:在mysql-proxy啟動時載入的外掛程式;
--user=user_name :運行mysql-proxy進程的使用者;
--defaults-file=/path/to/conf_file_name : 預設使用的設定檔路徑;其配置段使用[mysql-proxy]標識;
--proxy-skip-profiling : 禁用profile;
--pid-file=/path/to/pid_file_name :進程檔案名稱;
4.mysql> grant all on *.* to [email protected]‘%‘ identified by ‘密碼‘;
5.mysql-proxy --daemon --log-level=debug --user=mysql-proxy --keepalive --log-file=/var/log/mysql-proxy.log --plugins="proxy" --proxy-backend-addresses="192.168.182.135:3306" --proxy-read-only-backend-addresses="192.168.182.137:3306" --proxy-lua-script="/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua" --plugins=admin --admin-username="admin" --admin-password="admin" --admin-lua-script="/usr/local/mysql-proxy/lib/mysql-proxy/lua/admin.lua"
6.ps -ef | grep mysql-proxy
可以看到495 是mysql-proxy的核心啟動進程
netstat -tlunp | grep mysql-proxy
可以看到4040是mysql-proxy的連接埠 4041是admin的管理連接埠
7.然後到slave端去驗證是否能通過代理連接埠4040 連接埠串連到 mysql-proxy
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6C/76/wKiom1VJwhKRgqzzAAGkGD1_pGU968.jpg" title="QQ圖片20150506152328.jpg" alt="wKiom1VJwhKRgqzzAAGkGD1_pGU968.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6C/72/wKioL1VJxG7RX9ayAAH9sfHTTbA025.jpg" title="QQ圖片20150506152722.jpg" alt="wKioL1VJxG7RX9ayAAH9sfHTTbA025.jpg" />
8.mysql -uadmin -pyzg1314520 -h192.168.20.109 --port=4041 -padmin
驗證admin的登入查看
select * from backends;
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/6C/72/wKioL1VJxWLRnADHAADiCIsOk1A694.jpg" title="QQ圖片20150506153133.jpg" alt="wKioL1VJxWLRnADHAADiCIsOk1A694.jpg" />
因為rw-splitting.lua指令碼預設有4個連結才啟用分離;所以多開啟幾個終端;多測試幾下;你也可以去修改裡面的相關值來實現state全部UP.
mysql基於mysql-proxy的讀寫分離