Mycat实现读写分离

Posted

tags:

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

准备数据库

这里准备一个一主多从的传统架构数据库:一主多从

Master172.18.0.133306
Slave1
172.18.0.143306
Slave2172.18.0.303306


准备Mycat所需要的用户

mycat需要两个用户用来执行用户通过mycat执行的操作,当程序需要对表进行查询操作时,mycat将会使用mycat_r进行执行查询,当然你肯定很疑惑,明明用mycat_w进行查询不是更好吗,先不要急,慢慢往下看

用户名(名字可以DIY)权限作用
mycat_rSELECTmycat用来执行查询数据
mycat_w
CREATE,DELECT,INSERT,SELECT,UPDATEmycat用来执行增删改查

 

创建用户:

[[email protected] ~]# mysql -uroot -S /mysql/3306/3306.sock
mysql> GRANT CREATE,DELETE,INSERT,SELECT,UPDATE ON *.* TO ‘mycat_w‘@‘%‘ IDENTIFIED BY ‘mycat_w‘;
mysql> GRANT SELECT ON *.* TO ‘mycat_r‘@‘%‘ IDENTIFIED BY ‘mycat_r‘;
mysql> FLUSH PRIVILEGES;

检查两台从库这个用户有没有同步过来:

[[email protected] ~]# mysql -uroot -S /mysql/3306/3306.sock
mysql> select user,host from mysql.user;
+------------+---------------------+
| user       | host                |
+------------+---------------------+
| mycat_r    | %                   |
| mycat_w    | %                   |
+------------+---------------------+
9 rows in set (0.00 sec)

[[email protected] ~]# mysql -uroot -S /mysql/3306/3306.sock
mysql> select user,host from mysql.user;
+------------+---------------------+
| user       | host                |
+------------+---------------------+
| mycat_r    | %                   |
| mycat_w    | %                   |
+------------+---------------------+
9 rows in set (0.00 sec)

* 上面的步骤可能不太严谨,在生产环境中创建的用户登陆上需要进行对IP段进行限制

本文出自 “小小小平凡” 博客,谢绝转载!

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

springboot2.0+mycat实验读写分离

MySQL+MyCat分库分表 读写分离配置MySQL+MyCat分库分表 读写分离配置

用Mycat实现数据库读写分离分表分库

Mycat读写分离的简单实现

Mycat读写分离的简单实现

Mycat读写分离的简单实现