基于mysql5.6主从复制之mysql-proxy读写分离

centos6.4最小系统

安装编译环境:yum -y groupinstall "Development tools" "Server Platform Development"

由于mysql-proxy是基于lua脚本的,所以安装mysql-proxy之前得先安装lua,这里是编译安装

lua-5.1.5.tar.gz

工具都放在/root目录下

cd /root

tar xf lua-5.1.5.tar.gz

cd lua-5.1.5

[[email protected] lua-5.1.5]# ls

COPYRIGHT  doc  etc  HISTORY  INSTALL  Makefile  README  src  test

[[email protected] lua-5.1.5]# vi Makefile

将INSTALL_TOP= /usr/local/替换为

INSTALL_TOP= /usr/local/lua

[[email protected] lua-5.1.5]# cd src/

[[email protected] src]# vi Makefile

将CFLAGS= -O2 -Wall $(MYCFLAGS)替换为

CFLAGS= -O2 -Wall -fPIC $(MYCFLAGS)不然会报错(查资料说是基于64位系统)

cd /root/lua-5.1.5

make linux install

由于lua编译的时候回依赖于readline,所以须得安装readline

yum -y install readline readline-devel

安装完之后就继续安装lua,最后可以成功了

##################################################################

接下来编译安装mysql-proxy-0.8.3.tar.gz

cd /root

tar xf mysql-proxy-0.8.3.tar.gz

cd mysql-proxy-0.8.3

./configure LDFLAGS="-lm -ldl" LUA_CFLAGS="/usr/local/lua/bin/lua -I/usr/local/lua/include" LUA_LIBS="/usr/local/lua/lib -llua" --with-mysql=/usr/local/mysql/bin/mysql_config --prefix=/usr/local/mysql-proxy

编译的时候会出错:依赖于libevent,glib

yum -y install libevent libevent-devel glib*

继续编译,成功之后

make

当进行到一段时间后,又会出现错误,根据错误提示继续安装libtool*

然后继续安装

说是找不到库文件,然后在/usr/lib64下有找到lua-5.1.so的文件,于是查资料可能是另外一种原因devel包的可能

yum -y install lua-devel

执行之后再次make,终于成功了,最后make install

[[email protected] mysql-proxy-0.8.3]# /usr/local/mysql-proxy/bin/mysql-proxy -V

mysql-proxy 0.8.3

chassis: mysql-proxy 0.8.3

glib2: 2.28.8

libevent: 1.4.13-stable

LUA: Lua 5.1.5

package.path: /usr/local/mysql-proxy/lib/mysql-proxy/lua/?.lua

package.cpath: /usr/local/mysql-proxy/lib/mysql-proxy/lua/?.so

-- modules

proxy: 0.8.3

至此,mysql-proxy编译安装成功,其中的依赖关系真的要自己好好摸索

mysql-proxy的一些配置,以及启动脚本参考如下:

http://heylinux.com/archives/1004.html

时间: 2024-11-03 11:30:02

基于mysql5.6主从复制之mysql-proxy读写分离的相关文章

mysql proxy 读写分离

以下内容均摘录自网上.原址:http://blog.csdn.net/edwzhang/article/details/8475624 MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的. 如下图所示: 下面进行部署: 一.MySQL的安装与配置 可以参考这篇文章:http://heylinu

mysql—proxy读写分离

mysql-proxy简介 MySQL Proxy就是这么一个中间代理层,MySQL Proxy就是一个连接池,负责将前台应用的连接请求转发给后台的数据库,并且通过使用lua脚本,可以实现复杂的连接控制和过滤,从而实现读写分离和负载平衡.对于应用来说,MySQL Proxy是完全透明的,应用则只需要连接到MySQL Proxy的监听端口即可. (图略简,请多包涵) 实验环境: master 172.16.31.31 slave 172.16.31.32 proxy 172.16.31.30 1安

MySQL Proxy 读写分离(实战总结)

规划: 主mysql服务器:192.168.1.21 从mysql服务器: 192.168.1.22 mysql读写分离器:192.168.1.23 1.读写分离服务器上解压安装包,并添加对应用户,并编辑启动脚本: # tar xf mysql-proxy-0.8.3-linux-glibc2.3-x86-64bit.tar.gz -C /usr/local/ # cd /usr/local/ # ln -sv mysql-proxy-0.8.3-linux-glibc2.3-x86-64bit

mysql proxy 读写分离 1

#查了资料折腾半天,测出来了 #参考http://blog.csdn.net/e421083458/article/details/19697701这个脚本不错. #依赖包 yum -y install gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libmcrypt* libtool* flex* pkgconfig* libevent* glib* readline-devel #lua install cd /

高可用架构篇--MyCat在MySQL主从复制基础上实现读写分离

点击链接加入群[Dubbo技术交流2群]:https://jq.qq.com/?_wv=1027&k=46DcDFI 一.环境 操作系统:CentOS-6.6-x86_64-bin-DVD1.iso JDK版本:jdk1.7.0_45 MyCat版本:Mycat-server-1.4-release-20151019230038-linux.tar.gz MyCat节点IP:192.168.1.203      主机名:edu-mycat-01  主机配置:4核CPU.4G内存 MySQL版本:

搭建基于MySQL的读写分离工具Amoeba

搭建基于MySQL的读写分离工具Amoeba: Amoeba工具是实现MySQL数据库读写分离的一个工具,前提是基于MySQL主从复制来实现的: 实验环境(虚拟机): 主机 角色 10.10.10.20 多实例加主从复制 10.10.10.30 Amoeba服务器 10.10.10.40 客户端(最后测试使用) 1.首先搭建MySQL的主从复制(不在多提):需要注意的是:在主从库上需要创建一个用户,在主库上创建的用户为amoeba,权限是create,update,insert,delete:

基于Mycat的MySQL主从读写分离配置详解与示例

1.mycat二进制包安装 tar -zxvf Mycat-server-1.6.5-release-20180122220033-linux.tar.gzcd mycatmv mycat /opt/ useradd mycatchown -R mycat:mycat mycat 2.mysql操作搭建主库环境省略...... 创建数据库CREATE DATABASE `integration01` DEFAULT CHARACTER SET utf8 ; 创建物理表 CREATE TABLE

如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决 MySQL 主从同步的延时问题?

高并发这个阶段,肯定是需要做读写分离的,啥意思?因为实际上大部分的互联网公司,一些网站,或者是 app,其实都是读多写少.所以针对这个情况,就是写一个主库,但是主库挂多个从库,然后从多个从库来读,那不就可以支撑更高的读并发压力了吗? 如何实现 MySQL 的读写分离? 其实很简单,就是基于主从复制架构,简单来说,就搞一个主库,挂多个从库,然后我们就单单只是写主库,然后主库会自动把数据给同步到从库上去. MySQL 主从复制原理的是啥? 主库将变更写入 binlog 日志,然后从库连接到主库之后,

MySQL的读写分离的几种选择

MySQL的读写分离的几种选择 MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 原址如下: http://heylinux.com/archives/1004.html Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面. 因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步

Amoeba实现mysql的读写分离 CentOS6.5下

Amoeba是一个以MySQL为底层数据存储,并对应用提供MySQL协议接口的proxy.它集中地响应应用的请求,依据用户事先设置的规则,将SQL请求发送到特定的数据库上执行.基于此可以实现负载均衡.读写分离.高可用性等需求.与MySQL官方的MySQL Proxy相比,作者强调的是amoeba配置的方便(基于XML的配置文件,用SQLJEP语法书写规则,比基于lua脚本的MySQL Proxy简单) 不足 a).目前还不支持事务b).暂时不支持存储过程(近期会支持) c).不适合从amoeba