監控MYSQL服務是否異常

2021-09-20 16:20:18 字數 4294 閱讀 4470

問題描述:監控mysql服務是否正常啟動,如果未正常啟動,就啟動mysql

判斷mysql的方法:

1)埠判斷

1

2

[root@localhost ~]# netstat -lntup | grep 3306

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               listen      2288/mysqld

2)程序判斷

1

2

3

4

[root@localhost ~]# ps -ef | grep mysqld

mysql     2071     1  0 11:32 ?        00:00:00/bin/sh/usr/bin/mysqld_safe--basedir=/usr

mysql     2288  2071  0 11:32 ?        00:00:24/usr/libexec/mysqld--basedir=/usr--datadir=/var/lib/mysql--plugin-dir=/usr/lib64/mysql/plugin--log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock

root     10097  6962  0 17:27 pts/100:00:00grep--color=auto mysqld

3)返回值判斷

1

2

3

[root@localhost ~]# mysql -uroot -proot -e "select version();" &>/dev/null

[root@localhost ~]# echo $?

0

法一:實現思路是過濾出mysql埠3306進行判斷:

1

2

3

4

5

6

7

8

9

10

11

12

#!/bin/bash

port=`netstat-lnt|grep3306|wc-l`

if[ $port -ne1 ]

then

/etc/init.d/mysqlstart

else

echo"mysql is running."

fi

執行結果:

[root@localhost ~]# sh mysql1.sh

mysql is running.

法二:實現思路是通過mysql程序進行判斷:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#!/bin/bash

portcess=`ps-ef|grepmysql|grep-vgrep|wc-l`

if[ $portcess -ne2 ]

then

/etc/init.d/mysqldstart

else

echo"mysql is running."

fi

執行結果:

[root@localhost ~]# sh mysql1.sh

mysql is running.

注意:過濾的字串『mysql』不要在指令碼名字出現,如果出現則不准

法三:實現思路是通過web連線返回值判斷:

1

2

3

4

5

6

7

8

9

10

11

12

#!/bin/bash

mysql -uroot -proot -e"select version();"&>/dev/null

if[ $? -ne0 ]

then

/etc/init.d/mysqldstart

else

echo"mysql is running."

fi

執行結果:

[root@localhost ~]# sh mysql1.sh

mysql is running.

小結:web服務監控手段:

埠(本地或者遠端)

本地程序

shell指令碼 監控MySQL服務是否正常

原創模範生 2015 10 15 17 21 02 2783人閱讀 監控mysql服務是否正常,通常的思路為 檢查3306埠是否啟動,ps檢視mysqld程序是否啟動,命令列登入mysql執行語句返回結果,php或jsp程式檢測 需要開發人員開發程式 等等 方法1 監聽3306埠 1 2 3 4 5...

mysql和nginx服務是否正常監控指令碼

一 監控web伺服器和 mysql 方法 1.監控埠 nginx也相同 1.1本地監控 netstat tunlp grep 3306 wc l ss tunlp grep 3306 wc l 1.2遠端監控 nmap 10.117.33.98 p 3306 grep open wc l echo ...

mysql監控和建議服務 mysql的監控及優化

1.資料庫的用途 寫資料和讀資料 2.查詢語句的生命週期 1 mysql伺服器監聽3306埠 2 驗證訪問使用者 3 建立mysql執行緒 4 檢查記憶體 qcache 5 解析sql 6 生成查詢計畫 7 開啟表 8 檢查記憶體 buffer pool 9 到磁碟取資料 10 寫入記憶體 11 返...