linux 监控mysql脚本_Linux系统MySQL主从同步监控shell脚本

操作系统:CentOS系统

目的:定时监控MySQL数据库主从是否同步,如果不同步,记录故障时间,并执行命令使主从恢复同步状态

172b9a3516e8754f1820cb421596e0ca.png

1、创建脚本文件

vi /home/crontab/check_mysql_slave.sh   #编辑,添加下面代码

#!/bin/sh

# check_mysql_slave status

# author www.osyunwei.com

ip=eth0  #网卡名称

mysql_binfile=/usr/local/mysql/bin/mysql

mysql_user=root  #MySQL数据库账号

mysql_pass=test123456  #密码

mysql_sockfile=/tmp/mysql.sock

datetime=`date +"%Y-%m-%d/%H:%M:%S"`   #获取当前时间

mysql_slave_logfile=/home/logs/check_mysql_slave.log   #日志文件路径,必须提前创建好

slave_ip=`ifconfig $ip|grep "inet addr" | awk -F[:" "]+ '{print $4}'`

status=$($mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "show slave statusG" | grep -i "running")

Slave_IO_Running=`echo $status | grep Slave_IO_Running | awk ' {print $2}'`

Slave_SQL_Running=`echo $status | grep Slave_SQL_Running | awk '{print $2}'`

if [ "$Slave_IO_Running" = "Yes" -a "$Slave_SQL_Running" = "Yes" ]

then echo "Slave is Running!"

else

echo " $datetime $slave_ip Slave is not running!" >> $mysql_slave_logfile

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "SLAVE STOP;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "SLAVE START;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "EXIT"

fi

:wq!  #保存退出

chmod +x /home/crontab/check_mysql_slave.sh  #添加脚本执行权限

2、添加任务计划,修改/etc/crontab

系统运维    温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

vi /etc/crontab #在最后一行添加

*/10 * * * * root /home/crontab/check_mysql_slave.sh  #表示每10分钟执行一次

:wq!  #保存退出

3、重新启动crond使设置生效

/etc/rc.d/init.d/crond restart   #yum install -y vixie-cron安装计划任务,某些系统上可能没有预装

chkconfig crond on #设为开机启动

service crond start #启动

可以根据日志文件/home/logs/check_mysql_slave.log查看MySQL主从同步状态

至此,Linux下MySQL主从同步监控shell脚本完成。

温馨提示

感谢您浏览《Linux系统MySQL主从同步监控shell脚本》

现邀请您关注我们的【5分享】(fivsha)公众号,你将获取更多的IT资源。

如果有疑问也可以在公众号里面回复您遇到的问题或是点击在线帮助联系我们。

d7f1741ee1b9d626d57a052393cf338e.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558571.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python协成_Python协程(上)

几个概念:event_loop 事件循环:程序开启一个无限的循环,程序员会把一些函数注册到事件循环上。当满足事件发生的时候,调用相应的协程函数。coroutine 协程:协程对象,指一个使用async关键字定义的函数&#…

js父元素获取子元素img_css,前端_父标签div中包含一个子元素img标签,子元素div标签,为什么img要加上浮动,子元素div才会处于正常位置?,css,前端 - phpStudy...

父标签div中包含一个子元素img标签,子元素div标签,为什么img要加上浮动,子元素div才会处于正常位置?dom结构如图img加上float 子元素div显示正常。不加float div显示错位。附上我写的一个dome测试用的,大家可本地看下究…

android运营商获取本机号码_一键登录已成大势所趋,Android端操作指南来啦!

根据极光(Aurora Mobile)发布的《2019年Q2移动互联网行业数据研究报告》,2019年第二季度,移动网民人均安装APP总量已达56款。面对如此繁多的APP,想在用户的手机中占据一席之地,移动开发者们就不得不努力提升用户体验。而现实却是&…

spring批量写入mysql数据库_MyBatis-spring和spring JDBC批量插入Mysql的效率比较

工具框架用spring-batch,数据库是mysql(未做特殊优化)。比较数据框架mybatis和spring jdbc的插入效率。Mybatis三种实现:1、mybatis的官方写法Java代码publicvoidbatchInsert1(List poilist)throwsException {SqlSession sqlSession sqlSessionFactory.…

金额转换java_java金额转换

像商品价格,订单,结算都会涉及到一些金额的问题,为了避免精度丢失通常会做一些处理,常规的系统中金额一般精确到小数点后两位,也就是分;这样数据库在设计的时候金额就直接存储整型数据类型,前端…

java bloomfilter_爬虫技术之——bloom filter(含java代码)

在爬虫系统中,在内存中维护着两个关于URL的队列,ToDo队列和Visited队列,ToDo队列存放的是爬虫从已经爬取的网页中解析出来的即将爬取的URL,但是网页是互联的,很可能解析出来的URL是已经爬取到的,因此需要VI…

java php js_【javascript/PHP】当一个JavaScripter初次进入PHP的世界,他将看到这样的风景...

本文将从以下11点介绍javascript和PHP在基础语法和基本操作上的异同:1.数据类型的异同2.常量和变量的定义的不同,字符串连接运算符不同3.对象的创建方法的不同4.PHP与JS在变量声明提升和函数声明提升的差异5.var在JS和PHP中使用的差异6.PHP和JS在访问对象…

从零开始学java 框架_从零开始学 Java - 搭建 Spring MVC 框架

如果创建一个 Spring 项目Spring MVC 框架在 Java 的 Web 项目中应该是无人不知的吧,你不会搭建一个 Spring 框架?作为身为一个刚刚学习Java的我都会,如果你不会的话,那可真令人忧伤。1.在 MyEclipse 创建项目后,可以以…

java 系统类型_Java获取操作系统类型

Java获取操作系统完整版系统枚举类:public enum EPlatform {Any("any"),Linux("Linux"),Mac_OS("Mac OS"),Mac_OS_X("Mac OS X"),Windows("Windows"),OS2("OS/2"),Solaris("Solaris"),SunOS…

azure mysql on vnet_管理 VNet 终结点 - Azure 门户 - Azure Database for MySQL | Microsoft Docs

您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.使用 Azure 门户创建和管理 Azure Database for MySQL VNet 服务终结点和 VNet 规则Create and manage Azure D…

java jmap jc_利用jmap命令查看JVM内存使用详情

介绍打印出某个java进程(使用pid)内存内的,所有‘对象’的情况(如:产生那些对象,及其数量)。它的用途是为了展示java进程的内存映射信息,或者堆内存详情。可以输出所有内存中对象的工具,甚至可以将VM 中的heap&#xf…

雅居乐万豪酒店java_“万豪,我心所属之地” | 上海雅居乐万豪酒店Terence Sun的实习故事...

​我叫孙庭骏,来自台北,目前就读瑞士恺撒里兹酒店管理学院,在来上海之前曾在瑞士苏黎世万豪酒店的餐饮部实习过两次,共一年的时间,所以万豪对我来说并不陌生。万豪一直深深吸引我的莫过于它的核心价值以及非凡待客之道…

java quartz spring_JavaLib-quartz | 基于Spring Boot Quartz开发的定时任务

基于Spring Boot Quartz开发的JavaLib-quartz,目的是帮你快速构建定时任务系统,你可以专心编写你的业务逻辑,而不必关注定时任务具体是如何实现的,他的性能如何,有没有异常以及异常处理,监控等等问题。这些…

java static 加载顺序_一个例子搞清楚Java类加载顺序

当我们new一个GirlFriend时,我们都做了什么?一个例子搞懂Java程序运行顺序public class Girl {Person person new Person("Girl");static{System.out.println("Girl static");}static Person staticPerson new Person("GirlS…

java 轻量数据库_DBTree是一个springboot2 + vue-element-template实现的轻量数据库表结构查看及管理工具...

DBTree简介DBTree是一个WEB版的轻量数据库表结构查看及管理工具,相比phpMyAdmin, DBTree只专注于方便开发查看表结构信息和 注释维护。通过树形展示库表结构,可以对表进行自定义归类,在线更新注释。你还可以使用它来部分替代mybatis generato…

java通用异常_Java常用异常整理

填坑,整理下Java的常用异常。正确使用异常在实际编码中非常重要,但面试中的意义相对较小,因为对异常的理解和应用很难通过几句话或几行代码考查出来,不过我们至少应答出三点:异常类的继承关系、常用异常类、常用异常类…

java 移动页面中的图片上传_移动端上传图片(ajax跨域请求)

第一次写项目开发经验,望担待。除了前端以外的事就不叨叨了,下面开始弄干活(两个页面首页、列表页)。项目开发简述项目需求:上传图片并展示。项目地址:项目的链接地址开发工具:sublime后台:java开发语言&am…

php session 反序列化,PHP SESSION反序列化本地样例分析

PHP SESSION反序列化本地样例分析0X00漏洞原因主要原因是: ini_set(‘session.serialize_handler’, ‘php_serialize’);ini_set(‘session.serialize_handler’, ‘php’);两者处理session的方式不同。0X01漏洞分析如果在PHP在反序列化存储的$_SESSION数据时使用的…

php 标题去重复思想,WordPress网站发布文章时如何防止发布重复标题的文章?

事实上,所有插件后端代码都等同于将代码片段添加到functions.php中,functions.php代码片段可以生成插件,然后插件可以自然地集成到functions.php中。插件主要易于管理,但也增加了静态资源请求的数量。如果您知道如何处理这些请求&…

无法连接iphone软件更新服务器_苹果发布了iphone、ipad和mac的新软件更新

苹果已经发布了三种操作系统的软件更新:用于iphone和ipod的iOS、ipad的iPadOS和Macs的macOS。这些更新很小,主要集中在bug修复上,而不是添加新功能。这些更新标记为iOS 13.6.1、iPadOS 13.6.1和macOS 10.15.6补充更新。通常,iOS或…