【主库上】 在已有主从同步配置的基础上增加log配置项,打开“全日志”功能。 vim /etc/my.cnf log=mysqlfull.log service mysqld restart cat /var/lib/mysql/mysqlfull.log 给mysqlproxy机器授权: grant all on *.* to 'root'@'%' identified by '123123'; 【从库上】 在已有主从同步配置的基础上增加log配置项,打开“全日志”功能。 vim /etc/my.cnf log=mysqlfull.log service mysqld restart cat /var/lib/mysql/mysqlfull.log 给mysqlproxy机器授权: grant all on *.* to 'root'@'%' identified by '123123'; -------------------------------------------------------------------- 【搭建mysqlproxy】 tar zxf mysql-proxy-0.8.3-linux-rhel5-x86-32bit.tar.gz mv mysql-proxy-0.8.3-linux-rhel5-x86-32bit /usr/local/mysql-proxy 【配置】 (1)修改主配置 cd /usr/local/mysql-proxy/ 创建conf log目录 mkdir conf log vim创建mysql-proxy.conf,加入下面的内容 vim ./conf/mysql-proxy.conf [mysql-proxy] #本机 监听地址 和 开启的端口,默认端口4040 proxy-address=0.0.0.0:4040 #后端mysql用户名和密码 admin-username=root admin-password=123123 #mysql管理命令,用于对后端mysql集群中每台主机的 健康检查 admin-lua-script=/usr/local/mysql-proxy/share/doc/mysql-proxy/admin-sql.lua #配置主库ip和端口 proxy-backend-addresses=192.168.20.181:3306 #配置 从 库ip和端口,有多少个从库的,就需要配置多少行 proxy-read-only-backend-addresses=192.168.20.23:3306 proxy-read-only-backend-addresses=192.168.20.24:3306 proxy-read-only-backend-addresses=192.168.20.25:3306 #读写分离lua脚本 proxy-lua-script=/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua #日志路径 log-file=/usr/local/mysql-proxy/log/mysql-proxy.log #日志级别 log-level=debug #启动参数,以守护进程方法启动 daemon=true #开启keepalive,如果mysql-proxy进程异常终止后,mysql-proxy将会自动启起。 keepalive=true (2)修改读写分配置,以方便做测试,因为客户端连接数超过到min_idle_connections后才能让读走从库, 不然读还走主库。 vim /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua min_idle_connections = 1, max_idle_connections = 2, 【启动mysqlproxy】 cd /etc/init.d/ vim mysqlproxy #!/bin/bash #chkconfig: - 99 23 #description: mysql_proxy mysql_proxy_home='/usr/local/mysql-proxy' case "$1" in start) $mysql_proxy_home/bin/mysql-proxy \ --defaults-file=$mysql_proxy_home/conf/mysql-proxy.conf ;; stop) killall -9 mysql-proxy &>/dev/null ;; restart) killall -9 mysql-proxy &>/dev/null $mysql_proxy_home/bin/mysql-proxy \ --defaults-file=$mysql_proxy_home/conf/mysql-proxy.conf ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit 0 保存退出后: chmod +x /etc/init.d/mysqlproxy chkconfig --add mysqlproxy chmod 660 /usr/local/mysql-proxy/conf/mysql-proxy.conf service mysqlproxy start 或者在cd /usr/local/mysql-proxy/下直接: sh mysqlproxy start|stop|restart 也可以做启停操作 [root@rs1 mysql-proxy]# netstat -nlp | grep 4040 tcp 0 0 0.0.0.0:4040 0.0.0.0:* LISTEN 23096/mysql-proxy 【测试】 主库上: tail -f /var/lib/mysql/mysqlfull.log 从库上: tail -f /var/lib/mysql/mysqlfull.log 多开几个连接向mysqlproxy的4040端口做测试,连接数要大于min_idle_connections值,此处应大于2。 mysql -u root -h192.168.6.106 -P 4040 -p123123 mysql -u root -h192.168.6.106 -P 4040 -p123123 mysql -u root -h192.168.6.106 -P 4040 -p123123 **** 192.168.6.106为主库的ip地址,测试时写成自己主库的ip地址,此处不能写成127.0.0.1也不能写成localhost **** 测试select语句和create,insert语句,如果从库上只有查询(select),主库上只有写(create,update,insert)说明实验正常。
mysql-proxy配置
原创
©著作权归作者所有:来自51CTO博客作者安全守望者的原创作品,谢绝转载,否则将追究法律责任
下一篇:mysql 主从
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
mysql-proxy安装配置与测试
mysql-proxy代理的安装配置与测试
mysql lua mysql-proxy