- 主机配置与用途
主机名(ip) | 用途 |
---|---|
server1(172.25.42.1) | 主库(master) |
server2(172.25.42.2) | 从库(slave) |
server4(172.25.42.4) | proxy |
-
读写分离的实现
-
建立mysql的主从复制
主从复制查看该片博客:https://mp.csdn.net/mdeditor/97509351#
-
主库授予用户权限并测试连通性
mysql> grant select,insert,update on . to ‘repl’@‘172.25.42.%’;
主库建立数据库westos并建立表usertb,然后插入数据
mysql> create database westos;
mysql> use westos;
mysql> create table usertb(username varchar(10) not null, passwd varchar(15) not null);
在从库上查看是否可以查看到数据库与插入数据
从库可以查看到主库插入的数据,证明连通性没有问题。 -
配置proxy
- 解压
[root@server4 ~]# tar zxf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz -C /usr/local
[root@server4 ~]# cd /usr/local
[root@server4 local]# ls
bin etc games include lib lib64 libexec mysql-proxy-0.8.5-linux-el6-x86-64bit sbin share src
[root@server4 local]# mv mysql-proxy-0.8.5-linux-el6-x86-64bit/ mysql-proxy
2.进入mysql-proxy并创建配置目录,日志目录与配置文件
[root@server4 mysql-proxy]# ls
bin include lib libexec licenses share
[root@server4 mysql-proxy]# mkdir logs conf
[root@server4 mysql-proxy]# cd conf/
[root@server4 conf]# vim mysql-proxy.conf
[mysql-proxy]
user=root
proxy-address=172.25.42.4:3306
proxy-read-only-backend-addresses=172.25.42.2:3306##从库只能读取数据
proxy-backend-addresses=172.25.42.1:3306##写只能在主数据库
proxy-lua-script=/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua##指定分离参数脚本
log-file=/usr/local/mysql-proxy/logs/mysql-proxy.log##日志文件
pid-file=/usr/local/mysql-proxy/logs/mysql-proxy.pid##PID文件
log-level=debug##日志级别
plugins=proxy##插件运行方式
daemon=true##以daemon方式运行
keepalive=true##实时检测
3.修改脚本参数
- 测试
1.从机关闭备份(不然会一直进行数据同步,无法查看现象)
2.远程登陆数据库执行写操作
登陆数据库
插入数据
- 查看数据情况
主库查看
从库查看