博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL读写分离
阅读量:7025 次
发布时间:2019-06-28

本文共 1709 字,大约阅读时间需要 5 分钟。

前言

mysql-proxy是一个官方提供的框架,通过读写分离来提升数据库的并发负载能力

clipboard.png

前提: 已配置好主从

192.168.0.1:3306  # 主192.168.0.2:3306  # 从192.168.0.3:4000  # proxy

1 安装mysql-proxy

wget https://downloads.mysql.com/archives/get/file/mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gztar zxvf mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gzmv mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit /usr/local/mysql-proxy

2 配置mysql-proxy,创建主配置文件

[mysql-proxy]user=root #运行mysql-proxy用户admin-username=proxy #主从mysql共有的用户admin-password= #用户的密码proxy-address=192.168.0.3:4000 #mysql-proxy运行ip和端口,不加端口,默认4040proxy-read-only-backend-addresses=192.168.0.2 #指定后端从slave读取数据proxy-backend-addresses=192.168.0.1 #指定后端主master写入数据proxy-lua-script=/usr/local/mysql-proxy/lua/rw-splitting.lua #指定读写分离配置文件位置admin-lua-script=/usr/local/mysql-proxy/lua/admin-sql.lua #指定管理脚本log-file=/usr/local/mysql-proxy/logs/mysql-proxy.log #日志位置log-level=info #定义log日志级别,由高到低分别有(error|warning|info|message|debug)daemon=true    #以守护进程方式运行keepalive=true #mysql-proxy崩溃时,尝试重启

chmod 660 /etc/mysql-porxy.cnf

3、修改读写分离配置文件

vi /usr/local/mysql-proxy/lua/rw-splitting.luaif not proxy.global.config.rwsplit then proxy.global.config.rwsplit = {  min_idle_connections = 1, #默认超过4个连接数时,才开始读写分离,改为1  max_idle_connections = 1, #默认8,改为1  is_debug = false }end

4、启动mysql-proxy

/usr/local/mysql-proxy/bin/mysql-proxy --defaults-file=/etc/mysql-proxy.cnfnetstat -tupln | grep 4000 #已经启动tcp 0 0 192.168.0.3:4000 0.0.0.0:* LISTEN 6666/mysql-proxy关闭mysql-proxy使用:killall -9 mysql-proxy

5、测试读写分离

主服务器创建proxy用户用于mysql-proxy,从服务器会同步grant all on *.* to 'proxy'@'192.168.0.3' identified by 'xxx';使用客户端连接mysql-proxymysql -u proxy -h 192.168.0.3 -P 4000 -p详细测试可以自己做一些

参考文章

http://www.cnblogs.com/luckcs/articles/2543607.html
你可能感兴趣的文章
【Python】实现从AWR 报表上抓取指定数据改进版
查看>>
优化OEA中的聚合SQL
查看>>
15天玩转redis —— 第三篇 无敌的列表类型
查看>>
iozone 测试实例
查看>>
谈软件测试---一年测试工作总结
查看>>
Android实现Toast快速刷新
查看>>
jboss classloader机制以及scope配置
查看>>
PostgreSQL performance test use ssh tunnel
查看>>
【UWP应用开发实战】第二弹 移动版秒变桌面版 实践:罗马数计算器
查看>>
Java IO 之 FileInputStream & FileOutputStream源码分析
查看>>
时序列数据库武斗大会之什么是 TSDB ?
查看>>
fork() and vfork() getppid's result
查看>>
线程的其他特征
查看>>
《PostgreSQL 权威指南》Request For Comments - 结构
查看>>
【JSP开发】一个防盗链的WEB小例子
查看>>
我遇见的哪些 CSS 中有趣的尺寸、宽高
查看>>
域名分配问题
查看>>
VUE缓存:动态keep-alive
查看>>
杂项记录薄
查看>>
python 元类
查看>>