一、mysql路由器
mysql 官方自带的轻量流量转发中间件,专门搭配 innodb cluster 高可用集群使用,不缓存数据,只做转发,轻巧稳定。
核心作用:
1. 固定入口,自动故障转移
程序永远只连路由器 ip + 固定端口,不去记后端三台数据库 ip ;一旦主数据库宕机,集群选出新主库,路由器立刻自动识别更新路线; 网站代码不用改任何地址,依旧正常读写数据库,业务不会崩
2. 自带读写分离,分担压力
路由器开两个端口分开流量:
7002读写端口:新增、修改、删除数据 → 全部发给主库;
7001只读端口:查询数据 → 轮流分给两台从库 查询压力分散开,数据库运行更快。
1.安装软件

2.配置服务

3.在mysql集群中创建测试用户

4.连接mysql路由器

5.在server1上查看网络

二、innodb cluster
innodb cluster 是 mysql 官方推出的高可用完整解决方案,底层依托 mgr(组复制) 实现数据强一致同步,搭配管理工具与路由组件,整套架构解决 mysql 单点故障、读写分离、自动故障切换问题,专为生产环境设计。
整套架构由三大核心组件构成:
1.innodb cluster 数据集群(底层:mgr 组复制)
2.mysql shell(集群管理控制台,adminapi)
3.mysql router(应用层路由中间件)
innodb cluster 会在集群所有节点上自动创建系统数据库:mysql_innodb_cluster_metadata,这一套库表结构整体称为元数据模式(metadata schema)。
1.配置单主模式
先关闭三台机的mysqld 服务,然后修改配置文件

重启服务,在server1上执行


在server23上直接启动组复制即可

2.mysql shell
mysql 官方自带的高级客户端,替代老旧的 mysql 命令行客户端,专门用来管理 mgr、innodb cluster 高可用集群。
(1)下载rpm安装包

(2)在primary节点创建集群管理员


(3)登录 mysql shell 8.0.46

(4)接管已经提前搭建完成的 mgr 组复制集群

(5)验证集群状态


三台节点角色与状态分析
1. server1:3306(主节点 primary)
角色:memberrole: primary
读写权限:mode: r/w(可读可写,所有业务写入都走此节点)
在线状态:online mysql
版本:8.0.36 2.
2.server2:3306 /server3:3306(两个从节点 secondary)
角色:memberrole: secondary
读写权限:mode: r/o(只读,不接受写入)
在线状态:均为 online 复制延迟:replicationlag: applier_queue_applied ;代表事务队列全部应用完毕,三节点数据完全一致,无同步延迟。
3.mysql router
架设在 业务程序 ↔ innodb cluster 集群 中间的轻量代理网关,作用是屏蔽后端集群复杂细节。
集群永远只有 1 个可写主节点,主节点宕机后集群会自动选出新主。

mysql router 引导部署结果:bootstrap 引导初始化执行成功,已经自动对接上 innodb cluster 集群,自动生成了完整路由配置文件。
到此这篇关于mysql路由器的具体使用的文章就介绍到这了,更多相关mysql路由器内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论