Mysql读写分离-Mysql router

Posted liang-yao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql读写分离-Mysql router相关的知识,希望对你有一定的参考价值。

原理:mysql router根据端口来区分读写,把连接读写端口的所有请求发往master,连接只读端口的所有请求以轮询方式发往多个slave,从而实现读写分离

主:   SQL-Master      192.168.200.101/24

从:   SQL-Slave      192.168.200.102/24,192.168.200.103/24

mysql-router 192.168.200.104/24

 

使用rpm安装mysql-router

rpm -ivh https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-2.1.4-1.el7.x86_64.rpm

 

vim /etc/mysqlrouter/mysqlrouter.conf

[DEFAULT]

logging_folder = /var/log/mysqlrouter/

plugin_folder = /usr/lib64/mysqlrouter

runtime_folder = /var/run/mysqlrouter

config_folder = /etc/mysqlrouter

 

[logger]

level = info

 

[keepalive]

interval = 60

 

[routing:read_write]

bind_address=192.168.200.104 #监听地址

bind_port=7001 #监听端口

destinations=192.168.200.101:3306 #mysql列表

mode=read-write #指定读写

max_connections=1024

max_connect_errors=100

client_connect_timeout=9

 

[routing:read_only]

bind_address=192.168.200.104

bind_port=7002

destinations=192.168.200.102:3306,192.168.200.103:3306

mode=read-only #指定只读

max_connections=65535

max_connect_errors=100

client_connect_timeout=9

 

 

systemctl start mysqlrouter

systemctl enable mysqlrouter

ss -ntlu

tcp    LISTEN     0      128    192.168.200.106:7001                       *:*

tcp    LISTEN     0      128    192.168.200.106:7002                       *:*

 

主数据库配置:

mysql -u root -p123456

创建用户test设置密码123456

MariaDB [(none)]> grant all on *.* to [email protected]‘127.0.0.1‘ identified by "hello";

MariaDB [(none)]> use mysql;

修改host权限

MariaDB [(none)]> update user set host = ‘%‘ where user = ‘test‘;

MariaDB [mysql]> select user, host from user;

+------+---------------+

| user | host          |

+------+---------------+

| test | %             |

刷新数据库

MariaDB [mysql]> flush privileges;

 

mysql -utest -p123456 -h192.168.200.104 -P7001

以上是关于Mysql读写分离-Mysql router的主要内容,如果未能解决你的问题,请参考以下文章

MySQL Router实现MySQL的读写分离

使用MySQL Router实现高可用负载均衡读写分离

使用MySQL Router实现高可用负载均衡读写分离

7.利用MySQL Router构建读写分离MGR集群 | 深入浅出MGR

Atlas 读写分离

Atlas读写分离