当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 带你轻松接触一个检测MySQL状态的脚本

MYSQL
轻松接触MaxDB和MySQL之间的协同性
快速解决 MySQL中与浮点比较有关的问题
细化解析:Mysql数据库对文件操作的封装
在MySQL数据库中如何修改密码及访问限制
带你深入了解MySQL语句优化的基本原则
详细讲解如何为MySQL数据库添加新函数
如何解决MySQL的客户端不支持鉴定协议
教你快速掌握更改表中列顺序的好方法
解决MySQL 5.0不能使用自动增加字段问题
讲解MySQL数据库字符集出错的解决方法
如何实现My SQL中的用户的管理问题
教你快速掌握 MySQL数据库中触发器的应用
将数据从MySQL迁移到 Oracle的注意事项
正确认识MySQL对服务器端光标的限制
MySQL的存储过程写法和"Cursor"的使用
怎样才能解决MySQL 5.0.16的乱码问题
MySQL存储过程SAVEPOINT ROLLBACK to
提高MySQL数据库查询效率的三个实用技巧
在MySQL数据库中如何来复位根用户的密码
带你轻松接触MaxDB和MySQL之间的协同性

MYSQL 中的 带你轻松接触一个检测MySQL状态的脚本


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 96 ::
收藏到网摘: n/a

下面的这个脚本用到了namp扫描工具,所以,系统中如果没安装nmap扫描工具的,需要先安装该工具。

脚本的功能:

首先,检测mysql端口是否正常存在,端口不存在就执行启动mysql服务,当然,启动的脚本的位置根据你的安装路径会有不同,然后如果端口存在,则有mysql服务在运行,那么检测mysql状态,能不能正常连接,如能正常连接说明mysql正常,不做任何处理,如果不能正常连接,则杀掉所有mysql进程,然后启动mysql服务,为什么要杀掉进程而不进行正常的重起呢,是因为有时候mysql是不能正常关闭的,所以不能正常重起,所以保险的做法是杀掉进程,然后启动服务。

以下为引用的内容:

#!/bin/bash

/usr/bin/nmap localhost |grep 3306

if [ $? -eq 0 ]

then

/usr/local/mysql/bin/mysql -uxxxxx -pxxxxxx --connect_timeout=5 -e "show databases;"

if [ $? -ne 0 ]

then

/bin/ps aux |grep mysql |grep -v grep | awk '{print $2}' | xargs kill -9

/usr/local/mysql/bin/mysqld_safe --user=mysql & > /dev/null

fi

else

/usr/local/mysql/bin/mysqld_safe --user=mysql & > /dev/null

fi