基于mycat的mysql主从复制与主从切换

MySql 码拜 8年前 (2016-02-13) 1538次浏览
首先,本人部署了两个节点,互为主从关系:219.103,219.102
其次,配置mycat,配置如下:
<dataHost name=”localhost1″ maxCon=”1000″ minCon=”10″ balance=”1″
writeType=”0″ dbType=”mysql” dbDriver=”native” switchType=”1″ slaveThreshold=”100″>
<heartbeat>show slave status</heartbeat>
<!– can have multi write hosts –>
<writeHost host=”hostM1″ url=”192.168.219.103:3306″ user=”root”
password=”000000″>
<readHost host=”hostS1″ url=”192.168.219.102:3306″ user=”root”
password=”000000″ />
</writeHost>
<writeHost host=”hostM2″ url=”192.168.219.102:3306″ user=”root”
password=”000000″>
</writeHost>
</dataHost>
然后,登录mycat,建库表,写操作发生在102.节点上
此时,为了测试主从切换,在102节点执行stop。再执行写操作,此时顺利的在103节点上执行写操作。
问题来了,当102节点恢复正常后,没有与103节点数据同步,但是本人在102节点上查看同步状态是正常的,这是为什么?
或mycat的配置怎么修改来实现呢?
解决方案

20

主从复制好像不是mycat 实现的吧。

40

刚看了一下mycat:
关键特性
支持SQL92标准
遵守Mysql原生协议,跨语言,跨数据库的通用中间件代理。
基于心跳的自动故障切换,支持读写分离,支持MySQL主从,以及galera cluster。
支持Galera for MySQL集群,Percona Cluster或MariaDB cluster
基于Nio实现,有效管理线程,高并发问题。
支持数据的多片自动路由与聚合,支持sum,count,max等常用的聚合函数。
支持2表join,甚至基于caltlet的多表join。
支持通过全局表,ER关系的分片策略,实现了高效的多表join查询。
支持多租户方案。
支持分布式事务(弱xa)。
支持全局序列号,解决分布式下的主键生成问题。
分片规则丰富,插件化开发,易于扩展。
强大的web,命令行监控。
支持前端作为mysq通用代理,后端JDBC方式支持Oracle、DB2、SQL Server 、 mongodb 、巨杉。
支持密码加密
支持IP白名单
支持SQL黑名单、sql注入攻击拦截
集群基于ZooKeeper管理,在线升级,扩容,智能优化,大数据处理(2.0开发版)。
什么是MYCAT
一个彻底开源的,面向企业应用开发的大数据库集群
支持事务、ACID、可以替代MySQL的加强版数据库
一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群
一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server
结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品
一个新颖的数据库中间件产品
里面只是说有自动故障切换,没说自动故障恢复

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明基于mycat的mysql主从复制与主从切换
喜欢 (1)
[1034331897@qq.com]
分享 (0)