MySQL Proxy 安装,配置与测试
MySQL Proxy项目已经嵌入了LUA语言 当初希望得到的功能. 都已经实现了 包括 负载均衡 故障切换 SQ...
扫描右侧二维码阅读全文
11
2008/04

MySQL Proxy 安装,配置与测试

MySQL Proxy项目已经嵌入了LUA语言
当初希望得到的功能.
都已经实现了
包括
负载均衡
故障切换
SQL语句变形等等
有了SQL变形
则很多功能
例如数据库的垂直以及水平分割
都可以移出应用程序层
这样开发人员的负担就大大降低了.

环境:
CentOS 5.1
MySQL Proxy 0.6.1
只选择Development Tools其他组件未安装
路径:
lua执行程序: /usr/local/bin/lua
mysql-proxy执行程序: /usr/local/sbin/mysql-proxy
mysql-proxy配置文件: /usr/local/share/mysql-proxy

下面是MySQL Proxy的安装步骤
首先安装lua.由于MySQL Proxy 用到lua作为内嵌配置脚本语言
所以make的时候需要用到lua的文件
下载,解压并进入lua目录
[coolcode linenum="off"]
make ansi
make install
export LUA_CFLAGS="-I/usr/local/include"
export LUA_LIBS="-L/usr/local/lib -llua -ldl"
export LDFLAGS="-lm"
[/coolcode]
安装glib包
#yum install glib2-devel
安装libevent
#yum install libevent-devel
安装check
#yum install check
安装libtool
#yum install libtool
安装SVN
#yum install subversion
安装mysql开发包
#yum install mysql-devel(如果是手动安装,则只要保证mysql.h能够被系统找到即可)
正式安装MySQL Proxy
从svn上获取最新代码
[coolcode linenum="off"]
svn co http://svn.mysql.com/svnpublic/mysql-proxy/trunk mysql-proxy
cd mysql-proxy
./autogen.sh
./configure
./make
./make install
[/coolcode]
测试mysql proxy是否正常运行
#mysql-proxy -V

执行读写分离
[coolcode linenum="off"]
mysql-proxy --proxy-read-only-backend-addresses=192.168.210.132:3306 --proxy-backend-addresses=192.168.210.131:3306 --proxy-lua-script=/usr/local/share/mysql-proxy/rw-splitting.lua > /var/log/mysql-proxy/mysql-proxy.log &
[/coolcode]

Last modification:November 26th, 2018 at 04:16 pm
If you think my article is useful to you, please feel free to appreciate

4 comments

  1. 雪碧之爱

    请问一下.mysql-proxy只能是mysql4.1以上版本可以整合进来...
    mysql4.0可以不....不知道你没有去测试这个版本呢...呵呵

  2. Johnny Woo

    4.0版本确实没有去测试
    不过从理论上来推测
    由于mysql proxy只是一个穿透层
    他对于实际的两头都是透明的
    如果在4.0与4.1之间有sql语法差异
    那可能会有问题
    否则的话应该是没有太大问题的.

  3. 伊文

    请问兄弟,--proxy-read-only-backend-addresses=192.168.210.132:3306 --proxy-backend-addresses=192.168.210.131:3306 这样启动的话,当写了数据到192.168.210.131后,你的只读端的mysql服务器是不是需要mysql主从来同步数据还是mysql-proxy就能实现数据的同步。

  4. Michael Field

    To 伊文

    后端数据库需要做主从DB,同步数据,这步是必须的

Leave a Comment