mysql proxy 读写分离 1
#查了資料折騰半天,測出來了
#參考http://blog.csdn.net/e421083458/article/details/19697701這個腳本不錯。
#依賴包
yum -y install gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libmcrypt* libtool* flex* pkgconfig* libevent* glib* readline-devel
#lua install
cd /home/chentp/tools
curl -R -O http://www.lua.org/ftp/lua-5.3.1.tar.gz
tar zxf lua-5.3.1.tar.gz
cd lua-5.3.1
make linux
make install
#user for daemon
useradd ?mysql-proxy -s /sbin/nologin -M
#裝mysql-proxy
cd /home/chentp/tools
tar xf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz
cp -rp mysql-proxy-0.8.5-linux-el6-x86-64bit/* /application/mysql-proxy/
echo 'export PATH=$PATH:/application/mysql-proxy/bin/' >>/etc/profile
tail -3 /etc/profile
source /etc/profile
#啟動腳本
cat /etc/init.d/mysql-proxy
############################################
#!/bin/sh
export LUA_PATH=/application/mysql-proxy/share/doc/mysql-proxy/?.lua:/applicaton/mysql-proxy/lib/mysql-proxy/lua/?.lua
mode=$1
if [ -z "$mode" ] ; then
? mode="start"
fi
case $mode in
? 'start')
mysql-proxy --daemon \
--log-level=debug \
--user=mysql-proxy \
--keepalive \
--log-file=/var/log/mysql-proxy.log \
--plugins="proxy" \
--proxy-address=:4040 \
--proxy-backend-addresses=192.168.199.21:3306 \
--proxy-read-only-backend-addresses=192.168.199.22:3306 \
--proxy-read-only-backend-addresses=192.168.199.22:3307 \
--proxy-lua-script=/application/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua \
--plugins="admin" \
--admin-address=:4041 \
--admin-username="admin" \
--admin-password="admin" \
--admin-lua-script="/application/mysql-proxy/lib/mysql-proxy/lua/admin.lua"
? ? ;;
? 'stop')
? ? killall mysql-proxy
? ? ;;
? 'restart')
? ? if $0 stop ; then
? ? ? $0 start
? ? else
? ? ? echo ?"retart failed!!!"
? ? ? exit 1
? ? fi
? ? ;;
esac
exit 0
####################################################
#更改為700權(quán)限
chmod 700 /etc/init.d/mysql-proxy
#連接代理數(shù)據(jù)庫mysql-proxy,用for循環(huán)去壓數(shù)據(jù)庫代理
for i in `seq 10000`;do echo "this is quest $i";mysql -uoldboy -p111111 -h 192.168.199.20 -P 4040 -e "select * from oldboy.test" ; done;
#連接代理數(shù)據(jù)庫mysql-proxy的管理界面,查看連接的分配情況
watch 'mysql -uadmin -padmin -h 192.168.199.20 -P 4041 -e " select * from backends;"'
+-------------+---------------------+-------+------+------+-------------------+
| backend_ndx | address ? ? ? ? ? ? | state | type | uuid | connected_clients |
+-------------+---------------------+-------+------+------+-------------------+
| ? ? ? ? ? 1 | 192.168.199.21:3306 | up ? ?| rw ? | NULL | ? ? ? ? ? ? ? ? 2 |
| ? ? ? ? ? 2 | 192.168.199.22:3306 | up ? ?| ro ? | NULL | ? ? ? ? ? ? ? ? 1 |
| ? ? ? ? ? 3 | 192.168.199.22:3307 | up ? ?| ro ? | NULL | ? ? ? ? ? ? ? ? 1 |
+-------------+---------------------+-------+------+------+-------------------+
#有個坑,說明備注
--proxy-backend-addresses=192.168.199.21:3306 \????主庫
--proxy-read-only-backend-addresses=192.168.199.22:3306 \????從庫
--proxy-read-only-backend-addresses=192.168.199.22:3307 \????從庫
轉(zhuǎn)載于:https://blog.51cto.com/chentp/1713228
總結(jié)
以上是生活随笔為你收集整理的mysql proxy 读写分离 1的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 购物车Demo,前端使用AngularJ
- 下一篇: 配置Java开发环境