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

MYSQL
资深网管教你一步步安装MYSQL数据库
在MySql中添加远程超级用户
如何实现MySQL表数据随机读取
MySQL多表操作和备份处理
教你编写高性能的mysql语法
mysql的字符串函数
MySQL 4.1 字符集支持的原理
数据库连接过多的错误,可能的原因分析及解决办法
mysql中的数据编码
MySQL 4.1x 中文乱码问题
从SQL server数据库导入Mysql数据库的体验
PEAR MDB 数据库抽象层 : 一次编写—随处运行
安装并使用phpMyAdmin管理MySQL数据库
解决phpMyAdmin2.6以上版本数据乱码问题
用ISAPI_Rewrite实现反向代理(ReverseProxy)
Mysql 数据库的导入与导出
如何使用MYSQL数据库进行备份数据恢复
MySQL数据库的多表操作和备份处理
一个简便的MySql数据库备份的方法
MySQL安全的二十三条军规

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 65 ::
收藏到网摘: 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