shell指令碼:監控MySQL服務是否正常
監控MySQL服務是否正常,通常的思路為:檢查3306埠是否啟動,ps檢視mysqld程式是否啟動,命令列登入mysql執行語句返回結果,php或jsp程式檢測(需要開發人員開發程式)等等;
方法1:監聽3306埠
#!/bin/bash
#written by mofansheng@2015-10-15
port=`netstat -nlt|grep 3306|wc -l`
if [ $port -ne 1 ]
then
/etc/init.d/mysqld start
else
echo "MySQL is running"
fi
方法2:檢視mysqld程式
注意注意:如果使用程式過濾的話,指令碼名稱如果裡面包含mysql的話,指令碼執行有坑,切記!!!因為會把指令碼也grep了一次,導致結果不準確;
[root@localhost baby]# cat check_mysql.sh
#!/bin/bash
#written by mofansheng@2015-10-15
process=`ps -ef |grep mysql|grep -v grep |wc -l`
if [ $process -ne 2 ]
then
/etc/init.d/mysqld start
else
echo "MySQL is running"
fi
執行結果如下:
[root@localhost baby]# sh check_mysql.sh
Starting MySQL SUCCESS!
改名之後執行為正常結果:
[root@localhost baby]# mv check_mysql.sh check_db.sh
[root@localhost baby]# sh check_db.sh
MySQL is running
方法3:雙保險,程式和埠都成功才算mysql服務正常
#!/bin/bash
#written by mofansheng@2015-10-15
port=`netstat -nlt|grep 3306|wc -l`
process=`ps -ef |grep mysql|grep -v grep |wc -l`
if [ $port -eq 1 ] && [ $process -eq 2 ]
then
echo "MySQL is running"
else
/etc/init.d/mysqld start
fi
4:使用客戶端登入mysql執行命令,檢視返回結果測試服務是否啟動,理論上此方法最可靠。
[root@localhost baby]# cat check_db_client.sh
#!/bin/bash
#written by mofansheng@2015-10-15
mysql -uroot -p123456 -e "select version();" &>/dev/null
if [ $? -ne 0 ]
then
/etc/init.d/mysqld start
else
echo "MySQL is running"
fi
執行結果如下:
[root@localhost baby]# sh check_db_client.sh
MySQL is running
©著作權歸作者所有:來自51CTO部落格作者模範生的原創作品,如需轉載,請註明出處,否則將追究法律責任
linuxmysqlshellShell指令碼
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2157/viewspace-2820507/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- shell指令碼:監控MySQL服務是否正常薦指令碼MySql
- 使用Shell指令碼程式監控網站URL是否正常指令碼網站
- shell監控服務程式是否啟動
- 實戰模擬監控MySQL服務shell指令碼小結薦MySql指令碼
- shell指令碼監控啟動停止weblogic服務指令碼Web
- Shell指令碼監控MySQL主從狀態指令碼MySql
- 【shell】磁碟監控指令碼指令碼
- mysql監控指令碼MySql指令碼
- 分享實用監控指令碼:使用Shell檢查程式是否存在指令碼
- oracle會話監控shell指令碼Oracle會話指令碼
- Shell 系統資訊監控指令碼指令碼
- 通過shell指令碼檢測MySQL服務資訊指令碼MySql
- 透過shell指令碼監控oracle session指令碼OracleSession
- 常用的主機監控shell指令碼指令碼
- 通過shell指令碼監控oracle session指令碼OracleSession
- 案例五:shell指令碼實現定時監控http服務的執行狀態指令碼HTTP
- mysql 的一個監控指令碼,監控heartbeatMySql指令碼
- shell監控web服務的多種方案Web
- Linux 監控程式是否存在的指令碼Linux指令碼
- centos 監控web站點是否500 指令碼CentOSWeb指令碼
- mysql mon 的一個監控指令碼,監控heartbeatMySql指令碼
- 監控磁碟使用率的shell指令碼指令碼
- 利用shell指令碼監控網站狀態指令碼網站
- 我常用的主機監控Shell指令碼指令碼
- AIX系統資源監控SHELL指令碼AI指令碼
- 監控系統使用情況shell指令碼指令碼
- Grafana+Prometheus 監控 MySql服務GrafanaPrometheusMySql
- 教你如何監控網站URL是否正常網站
- 指令碼監控MySQL伺服器指令碼MySql伺服器
- 每5秒監控5000埠的shell指令碼指令碼
- 監控Oracle資料庫的常用shell指令碼Oracle資料庫指令碼
- shell之最常用的服務指令碼指令碼
- shell編寫服務啟動指令碼指令碼
- yii2 日誌自動傳送到釘釘 實時監控服務是否執行正常
- python監控mysql主從指令碼PythonMySql指令碼
- 監控mysql索引使用效率的指令碼MySql索引指令碼
- 監控指令碼指令碼
- 通過shell指令碼監控sql執行頻率指令碼SQL