mysql replication环境检查脚本

2023-10-28

author:skate
time:2013/05/13

 

mysql replication环境检查脚本

 

此脚本部署在slave端,可以通过短信或邮件监控slave的mysqld健康,replication环境健康,及复制延迟。

 

脚本:mysql_rep_moni.sh

#!/bin/bash
### author: skate
### time: 2013-05-14
### function: This script detects the mysqld health, replicaton health, replication latency


#variables
pwd=pwd
dir=/mysql/script/
ipaddr=1.1.1.1

###Determine whether there is connection
mysql_status=`netstat -nl | awk 'NR>2{if ($4 ~ /.*:3306/) {print "Yes";exit 0}}'`
  if [ "$mysql_status" == "Yes" ] ; then
        slave_status=`mysql -uroot -p$pwd -e "show slave status\G" | grep "Running" | awk '{if ($2 != "Yes") {print "No";exit 1}}'`
        slave_delay=`mysql -uroot -p$pwd -e "show slave status\G" | grep "Seconds_Behind_Master" | awk '{if ($2 >=0) {print $2 ;exit
 0}}'`
       echo "delay"$slave_delay
       echo "status"$slave_status
###replication is not working
         if [ "$slave_status" == "No" ];then
             echo "slave is not working!"
             sh "$dir"notify.sh "phone" "$ipaddr""_warn_zxg_rep" "$ipaddr""_mysql_replication_is_not_working" "dba"
             sh "$dir"notify.sh "email" "$ipaddr""_error_zxg_rep" "mysql_replication_is_not_working" "dba"
###replication is working,but replication have delay
        elif [ "$slave_status" != "No" ] && [ $slave_delay -ge 10 ] ; then
             echo "slave is working,but replication have delay!"
             sh "$dir"notify.sh "phone" "$ipaddr""_warn_zxg_rep" "$ipaddr""_mysql_replication_is_delay:$slave_delay" "dba"
             sh "$dir"notify.sh "email" "$ipaddr""_warn_zxg_rep" "mysql_replication_is_delay:$slave_delay" "dba"
        else
             echo "slave is working."
        fi
  else
       echo "mysqld is down!"
       sh "$dir"notify.sh "email" "$ipaddr""_error_zxg_mysqld" "$ipaddr""_mysqld_is_down" "dba" 
       sh "$dir"notify.sh "phone" "$ipaddr""_error_zxg_mysqld" "mysqld_is_down" "dba"
  fi

创建定时crontab
*/5     *       *       *       *       su - mysql -c "sh /mysql/script/mysql_rep_moni.sh> /dev/null 2>&1"


说明:
上面的报警API(notify.sh)可以根据自己的使用方式修改

 

------end------

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql replication环境检查脚本 的相关文章

  • 如何在 Django 中设置环境变量

    Django 是基于 Python 构建的强大 Web 框架 提供开箱即用的强大功能 它最重要但有时被忽视的功能之一是它能够使用环境变量处理配置 环境变量提供了一种在代码库之外设置配置的方法 从而提供更好的安全性和灵活性 本文旨在简化 Dj
  • Linux 中的 dig 命令及有用示例

    dig 代表 Domain Information Groper 是一个用于收集域名服务器信息的命令行网络工具 dig 命令是另一个强大的工具 类似于nslookup用于诊断 dns 相关问题 我们可以使用 dig 命令查询各种 dns 服
  • 在 Apache 中启用 .htaccess 的综合指南:配置、最佳实践和用例

    htaccess 文件是一个功能强大的配置工具 允许您控制和自定义 Apache Web 服务器上网站行为的各个方面 本指南将介绍如何在 Apache 中启用 htaccess 讨论最佳实践并提供常见用例示例 以帮助您充分利用此功能 1 了
  • 如何在 cPanel/WHM 中全局启用 Gzip 压缩

    Apache mod deflate模块负责 DEFLATE 输出过滤器 允许服务器的输出在通过网络发送到客户端之前进行压缩 mod deflate是替代mod gzip它与旧版本的 Apache 一起使用 仅具有 cPanel 访问权限的
  • JavaScript 中 var、let 和 const 有什么区别?

    变量声明只是告诉计算机变量存在以及它应该以什么值开始 与其他编程语言类似 JavaScript 也允许声明变量 JavaScript 中可以使用三个关键字来声明变量 let var 和 const 每个关键字对于如何使用它们创建的变量都有不
  • 升级 Fedora:分步教程

    如果您是 Fedora 的新用户 您可能不知道它有不同的版本 Fedora 的最新版本称为 主 版本 也称为 当前 版本 这意味着开发人员发布了以前的版本 用户可以从较低版本升级到该版本 在本文中 我们将了解如何升级 Fedora 版本 继

随机推荐

  • 如何在 Windows 上创建可启动 CentOS U 盘

    本教程将引导您完成在 Windows 上创建可启动 CentOS USB 记忆棒的过程 您可以使用此 USB 记忆棒在任何支持从 USB 启动的计算机上启动并测试或安装 CentOS 先决条件 8GB 或更大的 USB 记忆棒驱动器 Mic
  • 如何在 Ubuntu 20.04 上安装 Go

    Go 通常被称为golang是由 Google 创建的现代开源编程语言 可让您构建可靠且高效的应用程序 Go 是一种编译语言 这意味着您需要编译源代码以创建用于运行软件的可执行文件 许多流行的应用程序 例如 Kubernetes Docke
  • 如何在 Ubuntu 20.04 上安装 Atom 文本编辑器

    Atom是由 GitHub 开发的开源 跨平台代码编辑器 它有一个内置的包管理器 嵌入Git控制 智能自动完成 语法突出显示和多个窗格 从本质上讲 Atom 是一个基于 Electron 构建的桌面应用程序 使用 HTML JavaScri
  • 创建 Linux 交换文件

    交换空间是磁盘上的空间 当物理 RAM 内存已满时使用 当 Linux 系统耗尽 RAM 时 非活动页面将从 RAM 移至交换空间 交换空间可以采用专用交换分区或交换文件的形式 大多数情况下 在虚拟机上运行 Linux 时 不存在交换分区
  • 如何在 Vim / Vi 中删除行

    Vim 或其前身 Vi 预装在大多数 Linux 发行版和 macOS 上 如果您是系统管理员或普通 Linux 用户 了解 Vim 的基础知识非常重要 很多时候 在处理文本文件时 您需要删除一行或多行 本文介绍如何在 Vim Vi 中删除
  • 如何使用 Linux 命令行文本编辑器 Nano

    使用命令行时 您经常需要创建或编辑文本文件 Vim 和 Emacs 是两个最强大和流行的命令行编辑器 它们都有一个陡峭的学习曲线 可能会让新用户感到害怕 对于那些需要简单编辑器的人来说 有 nano GNU nano 是一款适用于 Unix
  • Bash 等待命令

    wait是等待给定作业完成并返回的命令退出状态等待的命令 自从wait命令影响当前 shell 执行环境 它在大多数 shell 中作为内置命令实现 在本文中 我们将探讨 Bash 内置功能wait命令 Bash wait命令 的一般语法w
  • 如何在 Ubuntu 18.04 上安装 Nginx

    Nginx 发音为 engine x 是一个免费 开源 高性能的 HTTP 和反向代理服务器 负责处理互联网上一些最大网站的负载 Nginx 可以用作独立的 Web 服务器 也可以用作反向代理 for Apache和其他网络服务器 与 Ap
  • 如何在 Linux 中列出 Cron 作业

    Cron 是一个调度守护程序 允许您安排按指定时间间隔执行任务 这些任务称为 cron 作业 可以安排按分钟 小时 每月的某一天 每月 每周的某一天或这些的任意组合运行 Cron 作业通常用于执行系统维护操作 例如 可以设置 cron 作业
  • 如何在 Ubuntu 18.04 上安装 Eclipse IDE

    Eclipse是使用最广泛的Java集成开发环境 IDE 它可以通过插件进行扩展 也可以用于其他编程语言的开发 例如 C JavaScript 和PHP Ubuntu 存储库中提供的 Eclipse 安装包 版本 3 8 1 已过时 最简单
  • 设置 Nginx 反向代理

    反向代理是一种接受客户端请求 将请求发送到一个或多个代理服务器 获取响应并将服务器的响应传递给客户端的服务 由于其性能和可扩展性 NGINX 通常用作 HTTP 和非 HTTP 服务器的反向代理 典型的反向代理配置是将Nginx放在前面No
  • chmod 777 是什么意思

    您正在尝试修复您的Web服务器的权限问题 并在互联网上找到了信息 说您需要递归chmod 777网络目录 在此之前 请确保您了解什么是chmod R 777这样做 以及为什么永远不应该将权限设置为 777 本文解释了基本的 Linux 权限
  • 为什么更推荐使用组合而非继承关系?

    前言 最近在看公司项目的代码 看到了大量的继承体系 而且还是继承了多层 维护 阅读都十分的困难 在查阅了一些资料以后 包括 Effective Java 一书中的第16条提到 组合优先于继承 那继承到底会暴露什么问题呢 为什么更推荐优先使用
  • Arduino搭建盲猜数字小游戏

    1 本文整理自视频 太极创客 零基础入门学用Arduino 第一部分 合辑 需要的硬件 一个Arduino Uno开发板 一个200 500欧姆电阻 一个共阴极数码管 一个按键 数条杜邦线 跳线 2 显示数字其实就是显示各个数码管 注意需要
  • 重温Linux内核:互斥和同步

    文章目录 互斥和同步 1 前言 2 概念 2 1 竞态 2 2 共享资源 临界资源 2 3 造成竞态的根本原因 3 并发分类 解决竞态的方法 4 中断屏蔽 5 原子变量 5 1 定义 5 2 实现原理 5 3 API 5 4 注意事项 6
  • 开发踩坑日常 (parseInt进制转换,文字方向、换行,代理请求,xlsx)

    日常踩坑填坑 js进制转换 刚发现有同学没搞清楚这个 parseInt number 进制数 将任意进制 转换 为十进制 强调一下 第二个参数 是形容第一个参数是什么进制的 并不是转换的目标进制 这里贴一下W3C 的文档说明 https w
  • 【转载】windows和wls文件互通

    windows和wls文件互通 wsl访问windows文件 https www jianshu com p d332e05adb6f windows访问wsl文件 https blog csdn net Caoyang He articl
  • Android 之 WebView (网页视图)基本用法

    本节引言 本节给大家带来的是Android中的一个用于显示网页的控件 WebView 网页视图 现在Android应用 层开发的方向有两种 客户端开发和HTML5移动端开发 所谓的HTML5端就是 HTML5 CSS JS来构建 一个网页版
  • TCPIP技术实验大作业:基于TCP/IP的程序开发技术综述及应用实践

    一 基于TCP IP的程序开发技术综述 1 1TCP IP协议族简介 TCP IP也被称作传输控制协议 网际协议 作为网络互连的核心协议 受到广泛的应用 该协议类型作为开放性的标准应用在各种计算机中 在一定程度上保证系统间通信的正常运行 在
  • mysql replication环境检查脚本

    author skate time 2013 05 13 mysql replication环境检查脚本 此脚本部署在slave端 可以通过短信或邮件监控slave的mysqld健康 replication环境健康 及复制延迟 脚本 mys