mysql-proxy安装配置
来源:互联网 发布:战列舰 知乎 编辑:程序博客网 时间:2024/06/08 01:28
mysql-proxy安装配置
MySQL-Proxy地址:192.168.10.103
MYSQL主库地址:192.168.10.104
MYSQL从库地址:192.168.10.105
安装过程:
1.先安装lua
Lua 是一个小巧的脚本语言。Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。
一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。
先安装可能的依赖包
[root@jia3 ~]# yum -y install gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libmcrypt* libtool* flex* pkgconfig* libevent* glib* readline-devel
[root@jia3 ~]# mkdir /opt/install/
[root@jia3 ~]# cd /opt/install/
[root@jia3 install]# wget http://www.lua.org/ftp/lua-5.1.4.tar.gz
[root@jia3 install]# tar zxvf lua-5.1.4.tar.gz
[root@jia3 install]# cd lua-5.1.4
[root@jia3 install]# make linux
此时如果出现
lua.c:67:31: fatal error: readline/readline.h: No such file or directory
说明缺少libreadline-dev依赖包
安装并配置环境变量
[root@jia3 install]# make install
[root@jia3 install]# export LUA_CFLAGS="-I/usr/local/include" LUA_LIBS="-L/usr/local/lib -llua -ldl" LDFLAGS="-lm"
2.下载mysql-proxy的安装包 mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz 解压安装
[root@jia3 install]# tar zxvf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz
[root@jia3 install]# mkdir /opt/mysql-proxy/
[root@jia3 install]# cp /opt/install/mysql-proxy-0.8.5-linux-el6-x86-64bit/* /opt/mysql-proxy/
[root@jia3 install]# cd /opt/mysql-proxy/
[root@jia3 install]# export PATH=$PATH:/opt/mysql-proxy/bin/
拷贝lua脚本/opt/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua到/opt/mysql-proxy/下,并修改脚本内容:
min_idle_connections = 4,
max_idle_connections = 8,
这里的4、8是指定链接数,在做试验时可以调整为1。
在主从配置OK的情况下,可以启动mysql-proxy。(可以通过./mysql-proxy --help-all查看支持的选项)
下面两种启动参数一样,只不过指定时一种使用简写
[root@jia3 bin]# ./mysql-proxy --proxy-address=192.168.10.103:3306 --proxy-read-only-backend-addresses=192.168.10.105:3306 --proxy-backend-addresses=192.168.10.104:3306 --proxy-lua-script=/opt/mysql-proxy/rw-splitting.lua --daemon --user=nobody --log-level=debug --log-use-syslog
[root@jia3 bin]# ./mysql-proxy -P 192.168.10.103:3306 -r 192.168.10.105:3306 -b 192.168.10.104:3306 -s /opt/mysql-proxy/rw-splitting.lua --daemon --user=nobody --log-level=debug --log-use-syslog
-P 决定mysql用那个接口进行连接,指定mysql-proxy工作的时候允许访问的IP和接口
-r 只读的后端服务器 192.168.10.105
-b 读写的后端服务器 192.168.10.104
-s 工作的时候指定脚本的位置和名称,默认是没有的
版本小于5.1.12,会出现bug,要加上-bug
--deamon 以一个服务的形式去启动
什么算服务:被定义为服务的进程是没有终端的,不依赖于用户的终端。终端关掉,服务还是可以正常运行的
在mysql主104(192.168.10.104)从(192.168.10.105)上都要创建用户。是远程连接,要授予远程连接的权限
mysql> grant all on *.* to proxy@'%' identified by 'proxy123';
3.然后使用proxy用户连接mysql-proxy来测试proxy-address=192.168.10.103:3306 读写分离。
经过测试,读写是分离的。
测试遇到的小问题:当有多个只读的库(即一主多从时),读只读某一个从库,而没有轮询。
猜想问题在lua脚本中,待学会lua脚本后再做深入。(也可能是我测试的方法有问题,直接命令行执行mysql -e)
- mysql-proxy安装配置
- MySQL-Proxy的安装配置
- MySQL-Proxy的安装配置
- MySql Proxy安装配置详解
- mysql-proxy安装及配置
- altas mysql-proxy安装配置
- Mysql Proxy安装与配置
- mysql-proxy配置
- Mysql Proxy配置笔记
- Mysql Proxy配置
- MySQL Proxy配置选项
- Mysql-proxy安装
- centos安装mysql-proxy
- centos安装mysql-proxy
- mysql-proxy安装
- 安装使用MySQL-Proxy
- Linux下 MySQL Proxy 安装与配置2
- linux mysql proxy 的安装,配置,以及读写分离
- 文件夹下文件名正确排序问题
- Ubuntu 16.04 mount error
- 模拟游戏引擎中的灯光实现
- 消息队列系列之分布式消息队列Kafka
- 自定义----Banner 轮播加小圆点>> 获取网络图片 点击事件
- mysql-proxy安装配置
- Vim清空整个文件的小技巧
- Amazon Rekognition
- [Hexo] 溜了溜了
- Android笔记(四):Service的启动和停止对生命周期的影响
- Microsoft Office Visio 2010
- 二进制位运算
- HDU 5984Pocky
- Microsoft Word 2010