基于MySQL-Proxy的读写分离配置

来源:互联网 发布:手机淘宝地址在哪 编辑:程序博客网 时间:2024/04/29 05:40
MySQL主服务器:192.168.128.148
MySQL从服务器:192.168.128.149
MySQL-Proxy:192.168.128.167
以下是MySQL-Proxy的安装步骤:
1. 安装lua
安装依赖包
# yum -y install gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libmcrypt* libtool* flex* pkgconfig* libevent* glib* readline-devel# mkdir /opt/proxy# cd /opt/proxy# wget http://www.lua.org/ftp/lua-5.1.4.tar.g# tar zxvf lua-5.2.3.tar.gz# cd lua-5.2.3# make linux # make install# export LUA_CFLAGS="-I/usr/local/include" LUA_LIBS="-L/usr/local/lib -llua -ldl" LDFLAGS="-lm"

2. 安装MySQL-Proxy

# cd /opt/proxy# wget http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/mysql-proxy-0.8.4-linux-rhel5-x86-64bit.tar.gz# tar zxvf mysql-proxy-0.8.4-linux-rhel5-x86-64bit.tar.gz# export PATH=$PATH:/opt/proxy/mysql-proxy-0.8.4-linux-rhel5-x86-64bit/bin/

查看任务

# bg# jobs

打开防火墙,MySQL-Proxy默认端口是4040

# /sbin/iptables -I INPUT -p tcp --dport 4040 -j ACCEPT# /etc/rc.d/init.d/iptables save# service iptables save# service iptables restart

查看监听

# netstat -tlp | grep mysql-proxy

3. 验证是否配置成功

登录主服务器:

<pre name="code" class="html"># mysql -uroot -p123456

<pre name="code" class="html">mysql> grant all on *.* to 'proxy1'@'192.168.128.167' identified by '123456';

登录从服务器,关闭主从复制:

# mysql -uroot -p123456
<pre name="code" class="html">mysql> stop slave;

在主服务器上插入数据

查看从服务器上是否没有复制数据

通过主服务器登录:

# mysql -uproxy1 -p'123456' -h192.168.128.167 -P4040;
其中-h表示登录到Proxy服务器,-P表示访问端口号

1) 检索插入数据的表,会发现检索不到新增数据。但直接连接主服务器,能检索到新数据。

2) 插入一条新数据,登录主服务器能检索到数据,但登录从服务器则访问不到数据。

配置成功,重新打开主从复制

# start slave





0 0