› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
Hankey
V2EX  ›  MySQL

各位大佬, Mysql 主从复制,用哪种高可用切换方案?

  •  
  •   Hankey · Aug 4, 2023 · 4235 views
    This topic created in 1156 days ago, the information mentioned may be changed or developed.
    目前用 mysql8+

    要求:
    1 、纯内网,没有上云
    2 、经过实践过,并且生产环境在使用的方案
    3 、有什么要注意的坑
    有没有实操方案文档参考一下,先谢!
    13 replies  •  2024-01-21 22:20:34 +08:00
    vczyh
        1
    vczyh  
       Aug 4, 2023
    Orchestrator
    pollux
        2
    pollux  
       Aug 4, 2023   ❤️ 1
    双交换机做堆叠,双电源冗余
    服务器双电源,双网卡 bonding
    多磁盘做 Raid5 或 Raid6, 不差钱就用 Raid1
    MySQL 做双主互备,互为主从
    负载均衡:
    1. 若已经有了 keepalived, 用 haproxy 或 nginx 加 vip 做 tcp 转发
    2. 若没有,建议用 consul+coredns 做域名的数据库连接
    jinsongzhao
        3
    jinsongzhao  
       Aug 4, 2023
    偷懒直接做成了双主,这样就不用切换了,主机完蛋了,直接换备机
    Worldispow
        4
    Worldispow  
       Aug 4, 2023
    千万不要用 mgr ,坑居多。
    binge921
        5
    binge921  
       Aug 4, 2023
    我目前用的 Galera Cluster 问下各位大佬 有问题么
    xudaxian520bsz
        6
    xudaxian520bsz  
       Aug 4, 2023
    @binge921 厉害,我还真没听过这个,只听过 MHA
    seers
        7
    seers  
       Aug 4, 2023 via Android
    歪个楼,在 db2 时代我司就被 db2 那个 hadr 搞得死去活来,现在二话不说买的阿里私有云,他好我也好( doge
    bigmomo
        8
    bigmomo  
       Aug 4, 2023
    @binge921 建议三个以上奇数节点,否则容易脑裂
    dif
        9
    dif  
       Aug 4, 2023
    目前经常用的方式就是 LVS + mysql
    fredcc
        10
    fredcc  
       Aug 4, 2023
    传统方案:主库双机+网络共享存储或 scsi 直连存储,corosync + pacemake 做双机 HA
    新派方案:MySQL NDB Cluster

    坑:
    传统方案双机切换后可能 binlog 位置跳变,需要手工修复主从
    NDB 集群要换引擎,其他问题不详,因为没用过
    my3157
        11
    my3157  
       Aug 4, 2023 via Android
    pxc
    hcymysql
        12
    hcymysql  
       Nov 9, 2023
    MySQL (MHA)重构版
    https://github.com/hcymysql/MHA-Re-Edition

    由于 MHA ( mha4mysql-manager )工具 2018 年已经停止维护更新,且不支持 Gtid 复制模式,在原版基础上增补功能难度较大,固考虑将其重构。

    参考了原版 MHA 的故障切换思路,改进的地方如下:

    1 )无需打通 ssh 公私钥互信认证,只需在 app1.cnf 配置文件里提供用户名和密码( root 权限)即可,这一步的作用是漂移 VIP ,工具会直接进入远程主机上执行 ip addr add VIP

    2 )目前主流版本 MySQL 5.7 和 8.0 的复制模式是基于 Gtid ,因事务号是唯一的,更改同步复制源不需要知道 binlog 文件名和 position 位置点,固简化了在客户端部署 agent 做数据补齐。

    3 )无需安装,就两个文件,一个是(环境配置检查)可执行文件 masterha_check_repl_mysql ,一个是(故障自动转移 autofailover 和在线平滑切换 online switch )可执行文件 masterha_manager_mysql

    4 ) 基于主从复制( Gtid 复制模式)才可以运行,masterha_check_repl_mysql 工具会检测,如果是基于 binlog 和 position (位置点复制模式)不能运行。可开启半同步复制确保切换以后数据完整性(至少有一个从库确认已接收到所有事件)。

    5 ) masterha_manager_mysql 守护进程主控文件,集成了 ( masterha_master_switch + master_ip_failover + masterha_secondary_check + shutdown_script + weixin_alarm )捆绑在一起

    6 ) AutoFailover 自动故障切换(转移) VIP 后,会发送微信公众号报警通知​

    7 )支持远控卡重启服务器(避免脑裂问题)。例如删除 VIP 失败,主机已经 hang 住,只能通过远程管理卡去重启机器。在这里你可以调用远控卡命令,比如 DELL 服务器的 ipmitool 命令​https://www.cnblogs.com/EricDing/p/8995263.html

    8 )增补对 MariaDB Gtid 的支持
    dyv9
        13
    dyv9  
       Jan 21, 2024 via Android
    @binge921 附议。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2250 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 06:46 · PVG 14:46 · LAX 23:46 · JFK 02:46
    ♥ Do have faith in what you're doing.