Mysql读写分离操作之mysql-proxy

常见的读写方式

基于程序代码内部实现

在代码中根据select、insert进行选择分类;这类方法也是生产常用的,效率最高,但是对开发人员比较麻烦。架构不能灵活调整

基于中间件的读写分离:

mysql-proxy、ameba、atlas、cobar、TDDL

搭建mysql-proxy

下载:http://downloads.mysql.com/archives/proxy/选择linux gentic,编译好的二进制文件。

tar zxf mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gz -C /usr/local/
ln -s mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit/ mysql-proxy

 

有时启动mysql-proxy出现文件限制的错误,可以适当的增加对打开文件的设定

ulimit –n 10240

 

打开代理:

/usr/local/mysql-proxy/bin/mysql-proxy -P 192.168.88.123:3306 -b 192.168.88.121:3306 -r 192.168.88.122:3306 -r 192.168.88.124:3306 -s /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua --daemon

##mysql-proxy 读写分离是基于lua脚本实现的

##-P 指定绑定的IP和端口,-b写,-r指定读, -s指定脚本

提示:上面的两步可以写在/ect/rc.local中,以便开机自执行

注意:在mysql-proxy中主库宕机,从库亦不可用.但是atlas可以弥补这个缺陷

原文地址:https://www.cnblogs.com/wxl-dede/p/5090121.html