MySQL中通过ProxySQL的使用来实现读写分离


本文主要给大家介绍MySQL中通过ProxySQL的使用来实现读写分离,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL中通过ProxySQL的使用来实现读写分离吧。ProxySQL是一个高性能的MySQL中间件,拥有强大的规则引擎。
官方文档:https://github.com/sysown/proxysql/wiki/
下载地址:https://github.com/sysown/proxysql/releases/github
官网默认情况下,rpm安装的ProxySQL只提供了SysV风格的服务脚本/etc/init.d/proxysql。
所以,可通过该脚本管理ProxySQL的启动、停止等功能。如果想要通过systemd管理ProxySQL,可在/usr/lib/systemd/system/proxysql.service中写入如下内容:一般来说,ProxySQL很少停止或重启开发云主机域名,因为绝大多数配置都可以在线修改。例如:
user:proxysql;
password:pwproxysql库说明:runtime_开头的是运行时的配置,这些是不能修改的。要修改ProxySQL的配置,需要修改了非runtime_表,修改后必须执行LOAD … TO RUNTIME才能加载到RUNTIME生效,执行save … to disk才能将配置持久化保存到磁盘。下面语句中没有先切换到main库也执行成功了,因为ProxySQL内部使用的SQLite3数据库引擎,和MySQL的解析方式是不一样的。即使执行了USE main语句也是无任何效果的,但不会报错。使用insert语句添加mysql主机到mysql_servers表中,其中:hostgroup_id 1 表示写组,2表示读组。修改后,加载到RUNTIME,并保存到disk。在proxysql主机的mysql_users表中添加刚才创建的账号,proxysql客户端需要使用这个账号来访问数据库。
default_hostgroup默认组设置为写组,也就是1;
当读写分离的路由规则不符合时,会访问默认组的数据库;修改后,加载到RUNTIME,并保存到disk。首先在后端master节点上创建一个用于监控的用户名(只需在master上创建即可,因为会复制到slave上),这个用户名只需具有USAGE权限即可。如果还需要监控复制结构中slave是否严重延迟于master(先混个眼熟:这个俗语叫做”拖后腿”,术语叫做”replication lag”),则还需具备replication client权限。这里直接赋予这个权限。以上设置实际上是在修改global_variables表,它和下面两个语句是等价的:修改后,加载到RUNTIME,并保存到disk。登录用户是刚才我们在mysql_user表中创建的用户,端口为6033创建两个数据库和查个表。(admin@127.0.0.1:6032) [(none)]>看完以上关于MySQL中通过ProxySQL的使用来实现读写分离,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。

相关推荐: 如何找到MySQL长事务

本文主要给大家简单讲讲如何找到MySQL长事务,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望如何找到MySQL长事务这篇文章可以给大家带来一些实际帮助。首先我们先要知道什么是长事务,顾名思义就是运行时间比较长,…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 06/08 09:13
下一篇 06/08 09:14

相关推荐