• 读写分离


    mycat读写分离与主从切换

    分表:在台服务器上,优点是易维护,类似表分区,缺点是在一台db服务器上,无法分担IO、负载集中。 分库:在多台服务器上,优点是分担IO、负载均衡,缺点是较不易维护、数据统计以及jion操作有些难度。
    数据库切分的目的是为了分担IO、负载均衡,分表无法达到最佳的要求,所以无法成为主流。
    在一台服务器,主3317端口,从3327端口。 主库备库上,添加复制帐号:
    GRANT REPLICATION SLAVE ON . TO ‘repl’@’10.254.%’ IDENTIFIED BY ‘mycatms’
    在备库上3327端口上设置复制:
    主库:3317端口
    这里写图片描述
    这里写图片描述
    从库:3327端口
    这里写图片描述
    这里写图片描述
    数据同步测试:
    这里写图片描述
    这里写图片描述
    配置schema.xml:
    然后修改mycat的schema.xml:
    alance为1:让全部的readHost及备用的writeHost参与select的负载均衡。
    witchType为2:基于MySQL主从同步的状态决定是否切换。
    heartbeat:主从切换的心跳语句必须为show slave status。
    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述
    alance为1:让全部的readHost及备用的writeHost参与select的负载均衡。
    witchType为2:基于MySQL主从同步的状态决定是否切换。
    heartbeat:主从切换的心跳语句必须为show slave status。
    这里写图片描述
    这里写图片描述
    有配置读节点:
    这里写图片描述
    这里写图片描述
    在mycat窗口上执行select操作:
    后台日志显示出只在3327上执行:
    这里写图片描述
    这里写图片描述
    Mycat窗口写操作:
    这里写图片描述
    这里写图片描述
    后台log显示写操作在3317上:
    这里写图片描述
    这里写图片描述
    Check下主从数据是否都已经写入了:
    主库3317端口:
    这里写图片描述
    这里写图片描述
    从裤3327端口:
    这里写图片描述
    这里写图片描述
    关闭主库
    这里写图片描述
    这里写图片描述
    Mycat后台报错:
    看到主从失效,因为主down了。
    因为我们通过mycat配置了主从切换模式,现在3317端口主库down了,那么写库应该自动切换到从裤3327上面,如果在mycat上面写入,就应该写到3327端口的从库了,验证如下:
    (1)在mycat窗口录入数据:
    这里写图片描述
    这里写图片描述
    (2)在3327端口从裤验证数据:
    这里写图片描述
    这里写图片描述
    看到3327端口的数据有新录入的4,meituan的数据。表明验证成功。
    (3) dnindex属性文件中writeHost已经变成了第二个了,如下所示:
    这里写图片描述
    这里写图片描述
    这个时候就会报错,主从连接失败,原因是从库3327会再重新从主库3317同步所有的数据,但是从库已经有了,所以就会报错,如下所示:
    这里写图片描述
    这里写图片描述
    我采用
    一个个忽略过后,就正常了,没有报错:
    这里写图片描述
    这里写图片描述
    但是这个时候如果再在mycat窗口上录入数据,debug分析面,还是会写入到3327里面去:
    这里写图片描述
    这里写图片描述
    后台debug日志:
    这里写图片描述
    这里写图片描述
    OK,至此,mycat主从切换成功。
  • 相关阅读:
    获取当前时间的时间戳
    js获取时间戳
    排序(一)冒泡,选择,插入
    MATLAB入门(一)数组
    锐捷客户端下虚拟机VMware无法联网的问题
    C++ Primer 读书笔记
    LA 4329 树状数组入门
    BZOJ 4352 预处理 + DP
    BZOJ 1954 (POJ 3764) Trie的经典应用 求树上最大异或值
    BZOJ 1597 斜率优化
  • 原文地址:https://www.cnblogs.com/duanxz/p/4796772.html
Copyright © 2020-2023  润新知