mysql读写分离(接上篇主从复制)

2019-05-29 16:43:35

不要问我叫什么,只是我的代码搬运工
上篇已经准备两台虚拟机

  1. 192.168.18.144//主
  2. 192.168.18.145//从

所以这里我们准备一台虚拟机
下载:http//dev.mysql.com/downloads/mysql-proxy/要根据虚拟机下载对应的32或64

  1. 192.168.18.146

以下所有配置都在146的机器上配置
把下载好的文件传入linux上
解压文件到/ usr / local目录并把名字改为mysql-proxy
创建lua目录,logs目录
把admin-sql.lua,rw- splitting.lua文件复制到lua目录下

  1. tar -zxvf 文件名 -C /usr/local/
  2. cd /usr/local
  3. mv 文件名 mysql-proxy
  4. cd mysql-proxy
  5. mkdir lua
  6. mkdir logs
  7. cp share/doc/mysql-proxy/admin-sql.lua
  8. cp share/doc/mysql-proxy/rw-splitting.lua

在在/ etc下创建的MySQL代理的配置文件

  1. vim /etc/mysql-proxy.cnf

写入下面这些配置不用写入注释,写入注释应该会报错

  1. user=root #运行mysql-proxy用户
  2. admin-username=test123 #该用户去连接主的服务器
  3. admin-password=123456 #用户的密码
  4. proxy-address=192.168.18.146:4040 #当前启动mysql-proxyip地址以及端口号
  5. proxy-read-only-backend-addresses=192.168.18.145 #写入只读的mysql ip地址
  6. proxy-backend-addresses=192.168.18.144 #写入可以入的主mysql ip地址
  7. proxy-lua-script=/usr/local/mysql-proxy/lua/rw-splitting.lua #指定读写分离配置文件位置
  8. admin-lua-script=/usr/local/mysql-proxy/lua/admin-sql.lua #指定管理脚本
  9. log-file=/usr/local/mysql-proxy/logs/mysql-proxy.log #日志存放
  10. log-level=info #日志级别
  11. daemon=true #以守护进程方式运行
  12. keepalive=true #mysql-proxy崩溃时,尝试重启

保存文件退出

  1. chmod 660 /etc/mysql-porxy.cnf

修改读写分离配置文件

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

指定配置文件启动

  1. /usr/local/mysql-proxy/bin/mysql-proxy --defaults-file=/etc/mysql-proxy.cnf

调度器配置成功还需要去主的机器上192.168.18.144这台机器去给当前调度机赋权限
全部开启至'test123'@'192.168.18.146'由'123456'确定;

在从调度机192.168.18.146去连接配置好的调度机

  1. mysql -u test123 -h 192.168.18.146 -P 4040 -p123456

这一步可能会遇坑,该步骤打完之后可能会停留在欢迎
界面不要慌
Navicat连接调度机端口号是在mysql-proxy配置的端口号默认似乎是4000没去验证
从Navicat可以直接看到主从数据库的数据对调度机进行操作就ok了

先了解操作步骤,再去了解底层原理
所以新手上路大佬指点


0
0
0

添加评论

正在回复:
取消
0
0
0
0