千家信息网

MySQL MHA应用实践(方案实战)

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,1、环境与条件已存在主从架构环境主机名IP地址主从角色MHA角色leo1192.168.3.2MasterMHA-nodeleo2192.168.3.3slaveMHA-nodeleo3192.168
千家信息网最后更新 2026年11月04日MySQL MHA应用实践(方案实战)

1、环境与条件
已存在主从架构环境

主机名IP地址主从角色MHA角色
leo1192.168.3.2MasterMHA-node
leo2192.168.3.3slaveMHA-node
leo3192.168.3.4slaveMHA-node,MHA-manager
vip192.168.3.6

主从确保主从状态正常

mysql>show slave status\G;IO与SQL进程为YES

参数更改

relay_log_purge = 0                 #不自动删除relay log 以便于宕机修复数据log_bin = /data/log/leo-bin      #从库开启binlog  以便于宕机修复数据expire_logs_days=7log-slave-updates=1

2、配置SSH
MHA在运行是会通过SSH服务连接到其他节点服务器进行检测或复制数据,因此需要集群内可免密码登陆。
在leo1-3内分别执行如下命令:

    ssh-keygen -t rsassh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.2ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.3ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.4

3、安装MHA Node
对所有mysql节点安装MHA Node

        1)安装perl语言         yum install perl-DBD-MySQL  -y   ###因为MHA用perl 开发         2)安装MHA Node         rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm     下载地址         https://code.google.com/archive/p/mysql-master-ha/downloads         3)创建命令软连接方便使用:         ls -s /app/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog         ls -s /app/mysql/bin/mysql  /usr/bin/mysql         4)检查MHA账户         grant all privileges on *.* to mha@'192.168.3%'  identified by 'mha';         select user,host from mysql.user;

4、MHA-Manager
Manager 可以安装在任何一台机器上。

    1)使用epel源安装perl环境        wget -O /etc/yum.repo.d/epel.repo  http://mirrors.aliyum.com/repo/eprl-6.repo    2)安装管理节点以来包        yum intall -u perl-Config-Tiny* epel-release perl-Log-Dispatch* perl-Parallel* per-Time*    3)安装MHA-Node            rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm    4)安装MHA-Manger        rpm -ivh mha4mysql-manager-0.56-0.el6.noarch.rpm

5、配置MHA管理节点

        mkdir -p /etc/mha        mkdir -p /var/log/mha/app1        vi /etc/mha/app1.cnf        [server default]        manager_log=/var/log/mha/app1/manager.log           manager_workdir=/var/log/mha/app1.log        mater_binlog_dir=/app/mysql/data   ##MHA保存主库binlog路径        user=mha                                          ##mysql 数据库授权yonghu        password=mha        ping_interval=2                                ##监控ping包时间间隔        repl_user=rep                                  ##主从复制用户        repl_password=leo123        ssh_user=root        repot_script=/usr/local/send_report      ##故障发生后触发脚本        secondary_check_script=/usr/local/bin/masterha_secondary_check -s leo3 -s leo2 --user=root --master_host=leo1 --master_ip=192.168.3.2 --master_port=3306        ########manager 联系不上leo1时会通过leo2、leo3 查看leo1的状态        shutdown_script=""        [server1]        hostname=192.168.3.2        port=3306        [server2]        hostname=192.168.3.4        port=3306        candidate_master=1             ##设定此参数后server2 会将优先升为主库        check_repl_delay=0              ##MHA忽律主从复制延迟        [server3]        hostname=192.168.3.3        port=3306

6、启动及测试

1)检测ssh免密登陆
    master_check_ssh -conf=/etc/mha/app1.cnf
2)检测主从复制状态
    master_check_repl -conf=/etc/mha/app1.cnf
3)启动MHA
    nohup master_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf --ignore_last_failver < /dev/null > /var/log/mha/app1/manager.log 2>&1 &    ##remove_dead_master_conf 在配置文件中删除master信息    ##ignore_last_failver  忽律上一次故障切换

7、配置VIP漂移

   1)利用keepalived    2)在配置文件中填入以下参数    master_ip_failover_script=/usr/local/bin/master_ip_failover    3)在脚本中加入以下参数    my = $vip= '192.168.3.6';    my $key=  0    my $ssh_start_vip = "/sbin/ifconfig eth0:$key $vip";    my $ssh_stop_vip = "/sbin/ifconfig eth0:$key down";    chmod +x /etc/mha/master_ip_failover
主从 配置 参数 数据 节点 状态 环境 检测 命令 地址 故障 文件 脚本 角色 忽律 服务 登陆 管理 主机 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州淘业互联网络科技 互联网科技公司经营范围 西安纸贵互联网科技有限公司 云信互联网科技有限公司 广西互联网科技公司 互联网高科技企业 互联网科技英文翻译 互联网科技宣传片 互联网科技创新企业排名 中国最先进互联网科技公司 科技互联网的估值 金融科技与互联网金融相同和不同 互联网科技有哪些公司 互联网科技人工智能实验室 中国科技创新与世界互联网大会 用友工业互联网科技发展 九思连强互联网电子科技有限公司 科技互联网公司两年变化 利用互联网等科技手段 小牛互联网科技有限公司地址 北京互联网科技有限公司 碳银互联网科技 互联网金融科技平台 互联网科技博主是什么意思 中国的互联网科技企业的崛起 央行互联网金融科技公司 以后互联网后是啥科技 想开互联网科技公司怎么样 中国互联网公司排名锤子科技 利用互联网等科技手段
0