当前位置:首页 > 数据库 > 正文

MySQL读写分离ProxySQL

2020-03-02 数据库

环境:

master —— 192.168.10.1
slave ——— 192.168.10.2
proxysql —— 192.168.10.3
client ——— 192.168.10.4

 

master节点

1、安装mariadb

2、编辑配置文件 /etc/my.cnf,并添加如下内容

3、启动服务

4、登录MySQL,创建有复制权限的用户账号,查看二进制日志文件位置

 

 

slave节点

1、安装mariadb

2、编辑配置文件 /etc/my.cnf,并添加如下内容

3、启动服务

4、登录MySQL,使用有复制权限的用户账号连接至主服务器,并启动复制线程

5、查看复制线程状态

 

 

proxysql节点

1、配置proxysql的yum源

2、安装服务

3、启动服务,查看端口号

4、登录proxysql,默认账号密码都为admin

5、向proxysql中添加MySQL节点,并查看

 

 

master节点

创建监控用户

 

 

proxysql节点

1、配置监控,加载到runtime,并保存到disk

2、查看监控连接是否正常

3、设置分组信息,需要修改的是main库中的mysql_replication_hostgroups表,加载到runtime?效,并保存到disk,并查看

 

 

master节点

创建访问用户

 

 

proxysql节点

将?户sqluser添加到mysql_users表中,加载到runtime?效,并保存到disk。default_hostgroup默认组设置为写组10,当读写分离的路由规则不符合时,会访问默认组的数据库


 

 

client节点

1、安装服务

2、登录

3、查看状态


 

 

proxysql节点

插入路由规则,加载到runtime?效,并保存到disk
注:因ProxySQL根据rule_id顺序进行规则匹配, select … for update规则的rule_id必须要小于普通的select规则的rule_id

 

 

client节点

进行读写操作

 

 

proxysql节点

查看读写分离状态。写操作在10组,读操作在20组

 

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/SQL/22051.html