zoukankan      html  css  js  c++  java
  • Atlas结合MHA故障恢复

    1.思路

    1.找到新的主库
    2.将新的主库从Atlas中配置下线
    3.保存到配置文件
    

    2.写脚本

    [root@db03 ~]# vim switch_Atlas.sh 
    #/bin/bash
    #1.获取新的主库IP
    new_master=`grep "as a new master" /service/mha/manager | tail -1 | awk -F '[ ,(]' '{print $2}'`
    #2.获取新的主库在Atlas中的ID
    new_master_id=`mysql -uuser -ppwd -h127.0.0.1 -P 2345 -e "SELECT * FROM backends" | grep $new_master | awk '{print $1}'`
    #3.移除提升为主库的从库
    mysql -uuser -ppwd -h127.0.0.1 -P 2345 -e "REMOVE BACKEND $new_master_id" &> /dev/null
    #4.找到挂掉的主机
    down_server=`grep "Master .* is down" /service/mha/manager | tail -1 | awk -F '[ ,(]' '{print $2}'`
    #5.远程连接执行恢复脚本
    ssh $down_server "sh /root/start_mha.sh"  # 这个脚本在恢复MHA里面有写
    #6.获取挂掉的主机的IP加端口
    down_server_port=`grep "Master .* is down" /service/mha/manager | tail -1 | awk -F '[ ,()]' '{print $3}'`
    #7.添加down的主库为新的从库到Atlas
    mysql -uuser -ppwd -h127.0.0.1 -P 2345 -e "add slave $down_server_port" &> /dev/null
    #8.保存配置
    mysql -uuser -ppwd -h127.0.0.1 -P 2345 -e "save config" &> /dev/null
    
  • 相关阅读:
    js解码
    node.js关于传送数据的二三事
    node下新建工程
    mysql配置
    mongodb配置及简单示例
    vue使用watch 观察路由变化,重新获取内容
    vue 封装方法
    ES6,import时如何正确使用花括号'{ }'
    css字体图标的制作
    vue实现淘宝商品详情页属性选择功能
  • 原文地址:https://www.cnblogs.com/Applogize/p/13399340.html
Copyright © 2011-2022 走看看