mycat工作原理
实现mysql的读写分离:
Mycat 可以简单概括为
一个彻底开源的,面向企业应用开发的大数据库集群
支持事务、ACID、可以替代MySQL的加强版数据库
一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群
一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server
结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品
一个新颖的数据库中间件产品

实验环境下,准备四台主机,分别是3台centos8 一台centos7
设置如下:
mycat:10.0.0.8
master:10.0.0.18
slave:10.0.0.28
client:10.0.0.7
设置根据个人习惯,如果觉得这样比较花里胡哨,可以直接跳过;

第一步,将18和28主机搭建主从
在10.0.0.18主节点上:vim /etc/my.cnf、
[mysqld]
server-id=18

重启服务:systemctl restart mysqld
登录mysql 查询show master logs;
记录二进制文件;binlog.000002 | 156

创建账号 create user repluser@‘10.0.0.%’ identified by ‘123456’;
授权: grant replication slave on . to repluser@‘10.0.0.%’;
在10.0.0.28从节点上 vim /etc/my.cnf
[mysqld]
server-id=28

**重启服务:**systemctl enable --now mysqld
进入mysql
执行
CHANGE MASTER TO
MASTER_HOST=‘10.0.0.18’,
MASTER_USER=‘repluser’,
MASTER_PASSWORD=‘123456’,
MASTER_PORT=3306,
MASTER_LOG_FILE=‘binlog.000002’,
MASTER_LOG_POS=156;
mysql> CHANGE MASTER TO
-> MASTER_HOST='10.0.0.18', #18是主节点的ip
-> MASTER_USER='repluser',
-> MASTER_PASSWORD='123456',
-> MASTER_PORT=3306,
-> MASTER_LOG_FILE='binlog.000002', #主节点的二进制文件
-> MASTER_LOG_POS=156;
然后 start slave;
查看 show slave status\G 查看状态是否开启

本文详细介绍了如何在CentOS环境中配置Mycat作为MySQL集群,实现读写分离,包括主从同步、Mycat的安装与配置,以及验证步骤。重点展示了Mycat如何通过负载均衡策略,实现在主节点执行写操作,从节点执行读操作。

22万+

被折叠的 条评论
为什么被折叠?



