MHA 日常管理

MHA是众多使用MySQL数据库企业高可用的不二选择,它简单易用,功能强大,实现了基于MySQL replication架构的自动主从故障转移。本文主要描述MHA的日常相关操作,同时给出了关于MHA的相关连接,供大家参考。

一、MHA的主要脚本(perl)
1.manager端
masterha_check_ssh              检查MHA的SSH配置状况
masterha_check_repl             检查MySQL复制状况
masterha_manger                 启动MHA
masterha_check_status           检测当前MHA运行状态
masterha_master_monitor         检测master是否宕机
masterha_master_switch          控制故障转移(自动或者手动)
masterha_conf_host              添加或删除配置的server信息

2.node端
save_binary_logs                保存和复制master的二进制日志
apply_diff_relay_logs           识别差异的中继日志事件并将其差异的事件应用于其他的slave
filter_mysqlbinlog              去除不必要的ROLLBACK事件(MHA已不再使用这个工具)
purge_relay_logs                清除中继日志(不会阻塞SQL线程)

二、日常操作
1.校验ssh等效验证
$ masterha_check_ssh --conf=/etc/masterha/app1.cnf

2.校验mysql复制
$ masterha_check_repl --conf=/etc/masterha/app1.cnf

3.启动mha监控,在master故障时开启自动转移
$ nohup masterha_manager --conf=/etc/masterha/app1.cnf > /tmp/mha_manager.log  < /dev/null 2>&1 &

###当有slave节点宕掉的情况是启动不了的,加上--ignore_fail_on_start即使有节点宕掉也能启动mha
$ nohup masterha_manager --conf=/etc/masterha/app1.cnf  --ignore_fail_on_start > /tmp/mha_manager.log  < /dev/null 2>&1 &

4.检查启动的状态
$ masterha_check_status --conf=/etc/masterha/app1.cnf

5.停止mha
$ masterha_stop  --conf=/etc/masterha/app1.cnf

6.多次failover
MHA在每次failover切换后会在管理目录生成文件app1.failover.complete ,下次在切换的时候如果由于间隔时间太短导致切换不成功,应手动清理掉。
rm -rf /var/log/masterha/app1/app1.failover.complete
或者通过加上参数--ignore_last_failover来忽略

7.手工failover
手工failover场景,适用于在master死掉,而masterha_manager未开启情形,如下,指定--master_state=dead
masterha_master_switch --conf=/etc/masterha/app1.cnf --dead_master_host=192.168.1.6 --master_state=dead --new_master_host=192.168.1.7
--ignore_last_failover

8.手动在线切换,如下,指定--master_state=alive
masterha_master_switch --conf=/etc/masterha/app1.cnf --master_state=alive --new_master_host=192.168.1.6 --orig_master_is_new_slave

masterha_master_switch --conf=/etc/masterha/app1.cnf --master_state=alive --new_master_host=192.168.1.6 --orig_master_is_new_slave
--running_updates_limit=10000

--orig_master_is_new_slave
  表明在切换时原master变为新master的slave节点
  
--running_updates_limit=10000
  切换时候选master如果有延迟的话,mha切换不能成功,加上此参数表示延迟在此时间范围内都可切换(单位为s),
  但是切换的时间长短是由recover时relay日志的大小决定

其他注意事项
  手动在线切换mha,切换时需要将在运行的mha停掉后才能切换。
  在备库先执行DDL,一般先stop slave,一般不记录mysql日志,可以通过set SQL_LOG_BIN = 0实现。
  然后进行一次主备切换操作,再在原来的主库上执行DDL。这种方法适用于增减索引,如果是增加字段就需要额外注意。
  可以通过如下命令停止mha:masterha_stop --conf=/etc/masterha/app1.cnf

三、MHA相关参考
  MySQL MHA简介及其优点  MySQL MHA 典型使用场景  MHA安装及等效性配置  MHA 配置文件样本描述  MySQL MHA配置常见问题  MHA masterha_check_repl 检测过程  MHA VIP切换脚本  MHA 自动故障转移步骤及过程剖析  MHA 在线切换过程  MHA 切换的2个异常(masterha_master_switch line 53)
  MHA 手动故障转移

时间: 2024-10-29 02:41:15

MHA 日常管理的相关文章

MHA 日常维护命令集

MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 2.查看复制是否建立好 masterha_check_repl --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 3.启动mha noh

mha日常维护命令

mha日常维护命令 http://m.blog.chinaunix.net/uid-28437434-id-3959021.html?/13033.shtml 1.查看ssh登陆是否成功masterha_check_ssh --conf=/etc/masterha/app1.cnf 2.查看复制是否建立好masterha_check_repl --conf=/etc/masterha/app1.cnf 3.启动mhanohup masterha_manager --conf=/etc/maste

KVM虚拟机的安装和日常管理

公司为了节约成本,需要把一部分业务迁到虚拟化平台上,今天把虚拟机装了出来,记一下笔记 1.物理机的系统安装(硬盘为300G+300G): centos6.5 64位,不安装桌面环境,默认运行级别为3 分区: /boot 128M swap 8G / 20G /data1  第一块硬盘剩余空间 /data2  第二块硬盘全部空间 采用最小化安装+以下软件包: BaseSystem -- Base Development-- Development tools 要配置好dns 确定系统时间与北京时间

linux日常管理常用命令--w

linux日常管理常用命令--w 命令:w(linux管理员最常用的命令) [[email protected] ~]# w 14:45:41 up 2 min,  2 users,  load average: 0.10, 0.10, 0.04 USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT root     tty1     -                14:44   54.

【Ionic+AngularJS 开发】之『个人日常管理』App(一)

写在前面的话 过去一年自己接触了不少手机前端开发,得益于现在手机性能的提升和4G普及,感觉使用混合技术开发手机App已经可以满足越来越多的应用场景了.新年伊始,对自己2016年所学知识做一个阶段性总结,记录一个自制的"小而萌"Hybrid App开发历程,共勉! [扩展阅读] 企业移动应用开发 混合开发成香饽饽 2016年JavaScript领域中最受欢迎的"明星"们 Hybrid APP混合开发的一些经验和总结 App预览 (*模糊化的个人数据) 简介 个人日常管

第一阶段考试:实战Linux系统日常管理

1. [项目名称] 实战Linux系统日常管理 [项目说明] 1.安装部署rhel系统,组建RAID磁盘阵列. 2.安装nginx 通过脚本编写 nginx服务服务启动脚本 [项目考核技能点] 1.安装部署rhel系统,网络设置. 2.shell脚本的基本用法 3. nginx的安装 4.整个方案中要包括:系统的安装,磁盘分区格式化,shell脚本的应用等相关内容. 项目环境可以参考如下: 1.安装两台rhel主机 对应主机名与IP :xuegod63.cn 192.168.1.63 xuego

Linux系统日常管理2 tcpdump,iptables

Linux系统日常管理2 tcpdump,iptables  Linux抓包工具 tcpdump 系统自带抓包工具 如果没有安装,需要安装之后才可以使用 安装: [[email protected] ~]# yum install -y tcpdump tcpdump -nn 不转换顿口的名字,直接显示端口号 tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80 抓取192.168.0.1ip地址的80端口的tcp包,并且不进行端口名字

Oracle ASM数据库日常管理维护_超越OCP精通Oracle视频课程培训25

oracle视频教程目标  Oracle视频教程,风哥本套oracle教程培训学习ASM基础知识,ORACLE单机与RAC的ASM安装配置说明,ORACLE单机与RAC ASM启动与关闭,图形界面和命令行下ASM磁盘组的创建与维护,ASM环境下的表空间管理,ASMCMD管理工具介绍,配置ASM监听实现远程连接管理,同机迁移数据库从ASM磁盘至文件系统,异机迁移数据库从文件系统至ASM磁盘等. 适用人群IT相关从业人员.Oracle数据库技术人员.想加工资的.想升职的都可以.  视频在线学习地址:

Exchange 日常管理九之:创建证书服务器

Exchange 日常管理九之:创建证书服务器 在前面的博文中我们和大家介绍了如何实现Exchange服务器如何实现高可用的部署,其中包括如何创建CAS阵列以及如何创建DAG组,那么今天的博文中我们就来和大家介绍一下Exchange服务器中的CA证书服务器. 安装Active Directory证书服务 首先介绍证书是因为Exchange很多服务都需要证书的支持,证书申请的颁发机构可以使用自己创建的,也可以到商业CA购买.我推荐自己创建CA,毕竟到商业CA购买一个证书需要几千甚至上万的人民币,而