mysql-proxy源码安装及配置mysql读写分离

  1. 安装Mysql-proxy关联系统包

libevent

libevent-devel

glib2

glib2-devel

lua 5.1.x

lua-devel-5.1.x

pkg-config

mysql-devel

openssl

openssl-devel

gcc*

2安装MySQL-proxy 0.8.5

下载源码包并解压

在源码包路径下安装

./configure –prefix=/u01/mysql-proxy
make
make install

3.配置mysql-proxy.cnf

内容如下:

[mysql-proxy]
admin-username=root
admin-password=oracle
daemon=true
keepalive= true
proxy-backend-addresses= 10.8.13.207:3307
proxy-read-only-backend-addresses= 10.8.13.178:3306
proxy-lua-script= /u01/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
admin-lua-script= /u01/mysql-proxy/share/doc/mysql-proxy/admin.lua
log-file= /var/log/mysql-proxy.log
log-level= debug

4.配置rw-splitting.lua

-- *build a connection pool of min_idle_connections for each backend and maintain
--   its size
-- *
--
--
 
localcommands    =require("proxy.commands")
localtokenizer   =require("proxy.tokenizer")
locallb          =require("proxy.balance")
localauto_config = require("proxy.auto-config")
 
---config
--
--connection pool
if notproxy.global.config.rwsplit then
        proxy.global.config.rwsplit = {
                min_idle_connections = 1,
                max_idle_connections = 2,
 
                is_debug = false
        }
end
 
---
--read/write splitting sends all non-transactional SELECTs to the slaves
--
--is_in_transaction tracks the state of the transactions
localis_in_transaction       = false
 
-- ifthis was a SELECT SQL_CALC_FOUND_ROWS ... stay on the same connections
localis_in_select_calc_found_rows = false
 
---
-- get aconnection to a backend
--
-- as long as we don‘t have enough connections in the pool,create new connections

视情况配置

5.启动mysql-proxy

/u01/mysql-proxy/bin/mysql-proxy  --defaults-file=/etc/mysql.cnf

6.测试

mysql-proxy 服务器ip为10.8.13.251

mysql –utest  -p###### -h10.8.13.251 –P4040

在多个mysql客户端连接代理做dml及select操作,可以暂停主从库,看数据查询情况,从而确定mysql-proxy读写分离是否成功。

时间: 2024-12-15 01:46:02

mysql-proxy源码安装及配置mysql读写分离的相关文章

LNMP架构的搭建(nginx+mysql+php源码安装 )+Discuz论坛的搭建

主机环境 redhat6.5 64位 实验环境 服务端 ip172.25.29.1  nginx+mysql+php 安装包   nginx-1.10.1.tar.gz         mysql-boost-5.7.11.tar.gz    cmake-2.8.12.2-4.el6.x86_64.rpm php-5.6.20.tar.bz2         re2c-0.13.5-1.el6.x86_64.rpm         libmcrypt-2.5.8-9.el6.x86_64.rpm

Mysql源码安装、配置、初始化及启动

[在此处输入文章标题] 主机环境redhat6.5 实验环境服务端 ip 172.25.29.1  mysql 安装包  mysql-boost-5.7.11.tar.gz   cmake-2.8.12.2-4.el6.x86_64.rpm 1.mysql的源码安装 1.解压压缩包 [[email protected] mnt]# tar zxfmysql-boost-5.7.11.tar.gz  #解压gz包 [[email protected] mnt]# yum installcmake-

Mysql的源码安装

到网站上面下载:cmake-3.0.0.tar.gz和mysql-5.5.8.tar.gz: 解压安装cmake-3.0.0.tar.gz tar -zxv -f cmake-3.0.0.tar.gz cd cmake-3.0.0 ./configure make make install 解压安装mysql-5.5.8.tar.gz (1).创建mysql安装目录和数据存放目录 mkdir -p /usr/local/mysql                 //安装mysql  mkdir

【MySQL源码】源码安装和启动mysql

--[MySQL源码]源码安装和启动mysql --------------------------------------2014/08/19 本机环境:ubuntu12.04,fedora-17 MYSQL版本:5.5.28 CMAKE版本:2.8.9 一.下载最新版本的cmake,解压后编译安装. sudo ./configure --prefix=/usr/local/etc/cmake-2.8.9 sudo make sudo make installsudo ln -s /usr/l

搭建zabbix(yum安装zabbix,ngixn,mysql,源码安装php)

yum安装zabbix,ngixn,mysql,源码安装php,并不是有特别的效果,而是zabbix源码安装失败了... 1.安装zabbix的repo2.yum 安装 3.yum安装mariadb mariadb-server4.创库zabbix,赋权给zabbix用户5.将zabbix文件的库导入mysql中 6.修改zabbix_server.conf配置文件7.启动开机自启zabbix_server.service 8.yum安装nginx9.修改nginx.conf配置文件,用ngin

CentOS6.5源码安装多个MySQL实例及复制搭建

多实例安装本节是在CentOS6.5源码安装MySQL5.6.35的基础上,在同一台机器增加一个MySQL实例.参考Centos中安装多个mysql数据的配置实例,安装目录为/usr/local/mysql3307/ 6.目录创建(-p父目录不存在则创建此目录) [[email protected] ~]# cd mysql-5.6.35 [[email protected] mysql-5.6.35]# mkdir -p /usr/local/mysql3307/data 7.编译安装 [[e

Linux+Apache+Mysql+Php源码安装

一.安装环境: 系统:Centos6.5x64 Apache: httpd-2.4.10.tar.gz Mysql: mysql-5.6.20-linux-glibc2.5-x86_64.tar.gz Php: php-5.6.0.tar.gz Apr: apr-1.5.1.tar.gz Apr-util: apr-util-1.5.3.tar.gz Libxml2: libxml2-2.9.1.tar.gz 默认安装路径我们统一安装到/usr/local下 二.Apache安装: 安装Apac

mysql数据库源码安装

Mysql数据库采用源码安装 [[email protected] ~]# wget -c http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17.tar.gz [[email protected] ~]# tar -zxf mysql-5.7.17.tar.gz [[email protected] ~]# cd mysql-5.7.17 [[email protected] mysql-5.7.17]# yum install cmake n

源码安装实现lamp的amp分离及Xcache加速

LAMP的搭建: 搭建LAMP的平台,要求apache.mariadb.php三个程序分别实现在三台虚拟机上,实现动静分离. 1.虚拟机IP 172.18.250.77,安装Apache实现和PHP的交互,httpd与php的交互有三种方式,cgi.fcgi和模块方式,因为是跨主机的交互,所以使用fcgi的方式实现 2.虚拟机IP 172.18.250.76,安装php和php-fpm,实现对动态页面的处理. 3.虚拟机IP 172.18.250.10,安装mariadb数据库,实现php对数据