MySQL主从备份和主主备份配置+Keepalived+MySQL读写分(3)

mysql读写分离是在mysql主从同步的基础上做的,mysql主服务器负责写,多台mysql从服务器负责读,mysql主从同步仅仅是把mysql主服务器的数据库同步到了mysql从服务器上,如果要实现读写分离,还需要一个服务器去协调。这个服务就是mysql-proxy。

1.环境配置

mysql主服务器:192.168.174.129

mysql从服务器:192.168.174.130

mysql-proxy服务器:192.168.174.131

master、slave以及mysql-proxy服务器的防火墙都为关闭状态,selinux也为disabled,不然会出错,selinux设置重启生效。

2.mysql-proxy安装

mysql的读写分离是靠过rw-splitting.lua脚本实现的,因此需要安装lua。

安装之前先安装包依赖

yum -y install gcc* gcc-c++ autoconf automake zlib* libxml* ncurses-devel libmcrypt libtool* flex* pkgconfig* libevent* glib*

wget 下载lua,很小,很快就能下载完成,解压

wget

MySQL主从备份和主主备份配置+Keepalived+MySQL读写分离

进入lua解压后目录,执行

make linux

make && make install

export LUA_CFLAGS="-I/usr/local/include" LUA_LIBS="-L/usr/local/lib -llua -ldl" LDFLAGS="-lm"

下载mysql-proxy,解压

MySQL主从备份和主主备份配置+Keepalived+MySQL读写分离

执行

mkdir /usr/local/mysql-proxy

cp * /usr/local/mysql-proxy

cd /usr/local/mysql-proxy

修改rw-splitting.lua文件

修改连接数,默认为4,即只有当有四台mysql服务器时才启用读写分离,为了试验成功,改为1

vim /usr/local/mysql-proxy/rw-splitting.lua

MySQL主从备份和主主备份配置+Keepalived+MySQL读写分离

启动msyql-proxy

cd /usr/local/mysql-proxy/bin

./mysql-proxy --proxy-read-only-backend-addresses=192.168.174.130:3306 --proxy-backend-addresses=192.168.174.129:3306 --proxy-lua-script=/usr/local/mysql-proxy/rw-splitting.lua &

参数说明:

--proxy-read-only-backend-addresses ---------只读服务器ip地址

--proxy-backend-addresses  ----------------------服务器地址(mysql主服务器)

--proxy-lua-script          ----------------------------lua脚本路径

&    -----------------------------------------------------表示后台执行

mysql主从备份+mysql读写分离配置完成。

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/1daf6c8ea23edcff0dae539c80a0b53c.html