MySQL Proxy有一项强大功能是实现“读写分离”,基本原理是让主数据库处理写方面事务,让从库处理SELECT查询。
Amoeba for MySQL是一款优秀的中间件软件,同样可以实现读写分离,负载均衡等功能,并且稳定性也高于MySQL Proxy,有兴趣的可以测试一下。
环境描述:
操作系统:CentOS6.3_x64
主服务器Master:192.168.0.202
从服务器Slave:192.168.0.203
调度服务器MySQL-Proxy:192.168.0.204
一、mysql主从复制
二、mysql-proxy实现读写分离
1、安装mysql-proxy
实现读写分离是有lua脚本实现的,现在mysql-proxy里面已经集成,无需再安装
2、配置mysql-proxy,创建主配置文件
3、修改读写分离配置文件
4、启动mysql-proxy
5、测试读写分离
1>.在主服务器创建proxy用户用于mysql-proxy使用,从服务器也会同步这个操作
2>.使用客户端连接mysql-proxy
创建数据库和表,这时的数据只写入主mysql,然后再同步从slave,可以先把slave的关了,看能不能写入,这里我就不测试了,下面测试下读的数据!
3>.登陆主从mysq查看新写入的数据如下,
4>.再登陆到mysql-proxy,查询数据,看出能正常查询
5>.登陆从服务器关闭mysql同步进程,这时再登陆mysql-proxy肯定会查询不出数据
6>.登陆mysql-proxy查询数据,下面看来,能看到表,查询不出数据
配置成功!真正实现了读写分离的效果!