mysql5.7+proxy_mysql5.7 MGR multi-master + proxysql

结构

主机名

IP

端口

作用

proxysql

172.17.0.7

6032,6033

代理

master

172.17.0.3

3306

MGR集群

slave1

172.17.0.4

3306

slave2

172.17.0.3

3306

slave3

172.17.0.6

3306

MGR部署为多主, 检查集群状态

91940d82c4a7cf3cedcee8bd4de07630.png

mgr其中一个节点运行sql 脚本,在sys库中建立function,地址如下:

https://github.com/zhishutech/mysql_gr_routing_check

USE sys;

DELIMITER $$

CREATE FUNCTION IFZERO(a INT, b INT)

RETURNS INT

DETERMINISTIC

RETURN IF(a= 0, b, a)$$

CREATE FUNCTION LOCATE2(needle TEXT(10000), haystack TEXT(10000), offset INT)

RETURNS INT

DETERMINISTIC

RETURN IFZERO(LOCATE(needle, haystack, offset), LENGTH(haystack)+ 1)$$

CREATE FUNCTION GTID_NORMALIZE(g TEXT(10000))

RETURNS TEXT(10000)

DETERMINISTIC

RETURN GTID_SUBTRACT(g,'')$$

CREATE FUNCTION GTID_COUNT(gtid_set TEXT(10000))

RETURNS INT

DETERMINISTIC

BEGIN

DECLARE result BIGINT DEFAULT0;

DECLARE colon_pos INT;

DECLARE next_dash_pos INT;

DECLARE next_colon_pos INT;

DECLARE next_comma_pos INT;

SET gtid_set=GTID_NORMALIZE(gtid_set);

SET colon_pos= LOCATE2(':', gtid_set, 1);

WHILE colon_pos!= LENGTH(gtid_set) + 1DO

SET next_dash_pos= LOCATE2('-', gtid_set, colon_

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值