mycat的主从配置

主从复制原理
主机所进行的写操作将其写入binary log的日志里面,从机不能直接读取主机上的信息而是直接读取binarylog日志里面的内容,但不是直接执行该日志里面的内容,而是将其写入relaylog日志里面,最后从机从relaylog日志里面读取进行同步。主从具有延时性。,
在这里插入图片描述

主从复制配置
在schema.xml文件中进行配置(主要进行的配置)
schema标签为虚拟的数据库
而在下面的dataNode标签为实际的数据库,
在这里插入图片描述
配置server.xml
这里主要是配置mycat账户的登录
在这里插入图片描述
配置好之后启动mycat
在这里插入图片描述
主从机连接配置
配置主机的cnf文件

在这里插入图片描述

#mycat相关配置
#主服务器唯一id
server-id=1  
#启用二进制日志
log-bin=mysql-bin
#设置不要复制的数据库
binlog-ignore-db=mysql
binlog-ignore-db=myblog
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=sys
#设置需复制的数据库 
binlog-do-db=testdb
#设置logbin格式
binlog_format=STATEMENT

配置从机的cnf文件
在这里插入图片描述
关闭主从机防火墙
配置完成之后分别重启主机和从机

之后登录主机的mysql进行从机读取日志的授权操作
在这里插入图片描述

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY '';

最后那部分是主机的数据库密码
然后查看主机的状态
在这里插入图片描述

再配置从机在这里插入图片描述

CHANGE MASTER TO MASTER_HOST='',
MASTER_USER='slave',
MASTER_LOG_FILE='mysql-bin.000004',
MASTER_LOG_POS=430;
第一个为主机所在服务器ip地址
第二个为授权时给出的主机名称
第三个为主机状态的fileset
最后一个为主机状态的位点pos

最后开启从机服务
在这里插入图片描述

再查看连接状态
在这里插入图片描述
如果都为yes则说明配置成功。
若为其他状态边看该状态下的错误日志

停止从服务复制功能
stop slave;
重新配置主从
reset master;

配置主从的读写分离
在schema.xml中配置dataHost标签中的balance属性,通过此属性配置读写分离的类型。
balance=“0”,不开启读写分离机制,所有读操作都发送到当前可用的writeHost上。
balance=“1”,全部的readhost与stand by writehost参与查询语句的负载均衡,简单的说,当双主双从模式(M1->S1,M2>S2,并且M1与M2互为主备),正常情况下,M2,S1,S2都参与查询语句的负载均衡。

扫描二维码关注公众号,回复: 13399021 查看本文章

balance=“2”,所有读操作都随机的在writeHost,readHost上分发
balance=“3”,所有读请求随机分发到readHost执行,writerHost不负担读压力

双主双从配置

Mycat常见错误
1、 问题:

schema TESTDB didn’t config tables,so you must set dataNode property!

解决:在schema.xml少加了一个参数
在schema标签的最后添加dataNode = “dn1”即可

猜你喜欢

转载自blog.csdn.net/nice_good_boy/article/details/121452905