一个简单的mysql服务检测启动脚本

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

目的: 监测mysql的存活状态,一旦监测到mysql down掉,重新启动mysql.


脚本内容:

1
2
3
4
5
6
7
/usr/local/mysql/bin/mysqladmin  -uroot -ppassword  ping  /dev/null  2>&1
 
if  [ $? - ne  0 ]
then
         /etc/init .d /mysql .server restart > /dev/null
         echo  "`/bin/date '+%Y%m%d %H:%M:%S'`  mysql is restart "  >>  /root/scripts/mysql_run .log
fi


利用crontab定时任务来执行脚本:

1
2
[root@Master_mysql scripts] # crontab -l
* /2  * * * *  /bin/bash  /root/scripts/mysql_ping .sh


手动模拟关闭msyql,然后间隔2分钟,查看cron执行日志"/var/log/cron"和脚本执行日

志"/root/scripts/mysql_run.log"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#cron执行日志
[root@Master_mysql scripts] # tail -n 10 /var/log/cron
Jul 22 16:27:01 Master_mysql  crontab [5818]: (root) BEGIN EDIT (root)
Jul 22 16:27:07 Master_mysql  crontab [5818]: (root) REPLACE (root)
Jul 22 16:27:07 Master_mysql  crontab [5818]: (root) END EDIT (root)
Jul 22 16:27:38 Master_mysql  crontab [5849]: (root) LIST (root)
Jul 22 16:28:01 Master_mysql crond[3103]: (root) RELOAD ( cron /root )
Jul 22 16:28:01 Master_mysql crond[5853]: (root) CMD ( /bin/bash  /root/scripts/mysql_ping .sh)
Jul 22 16:29:59 Master_mysql  crontab [6138]: (root) LIST (root)
Jul 22 16:30:01 Master_mysql crond[6140]: (root) CMD ( /bin/bash  /root/scripts/mysql_ping .sh)
Jul 22 16:32:01 Master_mysql crond[6394]: (root) CMD ( /bin/bash  /root/scripts/mysql_ping .sh)
Jul 22 16:34:01 Master_mysql crond[6429]: (root) CMD ( /bin/bash  /root/scripts/mysql_ping .sh)
 
#脚本执行日志
[root@Master_mysql scripts] # cat mysql_run.log
 
20140722 16:28:14  mysql is restart
20140722 16:30:09  mysql is restart
20140722 16:34:08  mysql is restart


这样就可以实现mysql停服时自动启动了.



本文转自 marbury 51CTO博客,原文链接:http://blog.51cto.com/magic3/1440963

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
16天前
|
关系型数据库 MySQL Apache
mysql5.7 本地计算机上的mysql 服务启动后停止 的问题解决
mysql5.7 本地计算机上的mysql 服务启动后停止 的问题解决
11 0
|
25天前
|
存储 Java 关系型数据库
社区医院管理服务系统【GUI/Swing+MySQL】(Java课设)
社区医院管理服务系统【GUI/Swing+MySQL】(Java课设)
25 1
|
2月前
|
监控 安全 关系型数据库
在规划阿里云RDS跨区迁移资源和服务可用性
在规划阿里云RDS跨区迁移资源和服务可用性
261 4
|
3月前
|
关系型数据库 MySQL 网络安全
主机无法访问远程mysql服务
主机无法访问远程mysql服务
48 0
|
4月前
|
SQL 关系型数据库 MySQL
小白带你学习linux的mysql服务(主从mysql服务和读写分离三十一)
小白带你学习linux的mysql服务(主从mysql服务和读写分离三十一)
68 0
|
4月前
|
关系型数据库 MySQL
cmd中输入net start mysql 提示:服务名无效或者MySQL正在启动 MySQL无法启动
cmd中输入net start mysql 提示:服务名无效或者MySQL正在启动 MySQL无法启动
|
1月前
|
弹性计算 关系型数据库 MySQL
阿里云ECS使用docker搭建mysql服务
阿里云ECS使用docker搭建mysql服务
152 1
|
2天前
|
存储 SQL 关系型数据库
不停止MySQL服务增加从库的两种方式
不停止MySQL服务增加从库的两种方式
|
3天前
|
关系型数据库 MySQL 中间件
【MySQL实战笔记】07 | 行锁功过:怎么减少行锁对性能的影响?-02 死锁和死锁检测
【4月更文挑战第19天】在高并发环境下,死锁发生在多个线程间循环等待资源时,导致无限期等待。MySQL中,死锁可通过`innodb_lock_wait_timeout`参数设置超时或`innodb_deadlock_detect`开启死锁检测来解决。默认的50s超时可能不适用于在线服务,而频繁检测会消耗大量CPU。应对热点行更新引发的性能问题,可以暂时关闭死锁检测(风险是产生大量超时),控制并发度,或通过分散记录减少锁冲突,例如将数据分拆到多行以降低死锁概率。
19 1
|
1月前
|
关系型数据库 MySQL 数据库
使用Docker搭建MySQL数据库服务
本文介绍了如何使用Docker搭建MySQL数据库服务。首先,通过`docker pull mysql:5.7`命令拉取MySQL 5.7镜像,然后运行`docker run`命令创建并启动容器。接着,使用`docker exec`进入容器并创建MySQL用户及授权。最后,通过MySQL客户端如Navicat测试连接,验证安装成功。Docker简化了MySQL的部署和管理,确保环境一致性。
37 0