ProxySql 简介
ProxySQL 是基于 MySQL 的一款开源的中间件的产品,是一个灵活的 MySQL 代理层,可以实现读写分离,支持 Query 路由功能,支持动态指定某个 SQL 进行缓存,支持动态加载(无需重启 ProxySQL 服务),故障切换和一些 SQL 的过滤功能。
具体介绍请参考:ProxySQL 基础篇
文章中指出 主从库的配置文件中 要有 read_only节点 这个在我的上一篇配置主从数据库中有配置
但是在MySQL配置文件中写的话 必须要写成 read-only = 1或者 read-only = 0
因为proxysql的写组和读组是根据这个节点值来分类的 0 会被分配到写组 1 是读组
然后下面我给的是 ubuntu20.04的安装方法,剩余的操作参考上面大神的文章
proxysql大坑
proxysql目前安装最新的 内置的mysql版本也才是5.5.30的 所以如果你的数据库是8.0及以上的
一定要记得修改proxysql内置mysql的版本号 登上proxysql的应用端执行以下命令
update global_variables set variable_value="8.0.4 (ProxySQL)" where variable_name='mysql-server_version';
#那个版本号8.0.4 你可以随意改 只要是8.0以上的就行
load mysql variables to run;
save mysql variables to disk;
配置好后 springboot中的datasource换成 proxysql的客户端ip就好
如有疑问 可留言,随时在线
安装ProxySql (环境: ubuntu20.04)
先进入这个下载文件夹
cd /tmp
#下载deb安装包
wget https://github.com/sysown/proxysql/releases/download/v2.0.12/proxysql_2.0.12-ubuntu18_amd64.deb
#执行安装命令
sudo dpkg -i proxysql_*
#安装完成 就这么简单了
#首次安装它不会自动启动 所以我们要手动启动一下
systemctl start proxysql.service
netstat -apn | grep 6033 #查看是否启动 这个是客户端的端口 有四个监听端口
netstat -apn | grep 6032 #应用端端口,就是配置proxysql的端口
6033有四个 6032有一个