開發監控MySQL 或者 Nginx Shell 指令碼
思路可以參考表1:
表 1 監控Web服務和MySQL資料庫服務是否異常的常見方法
埠監控 |
1)伺服器本地監控服務埠的常見命令netstat、ss、lsof 2)從遠端監控伺服器本地埠的命令有telnet、nmap、nc |
監控服務程序或進 程數 |
此方法適合本地伺服器,注意,過濾的是程序的名字。命令為: ps -ef|grep mysql|wc -l |
在客戶端模擬使用者訪問 |
使用wget或curl命令程序測試(如果監測資料庫,則需要轉為通過Web伺服器去訪問資料庫),並對測試結果做三種判斷: 1)利用返回值(echo $?)進行判斷 2)獲取特殊字串以進行判斷(需要事先開發好程式) 3)根據HTTP響應header的情況進行判斷 |
登入MySQL資料庫判斷 |
通過MySQL客戶端連線資料庫,根據返回值或返回內容判斷。例如: mysql -uroot -pmima -e “select version();” &>/dev/null;echo $? |
下面給出Demo:
1)檢測MySQL是否啟動,如果沒有啟動就將其啟動。
指令碼mysql_mon.sh如下:
#!/bin/bash if [ `netstat -tlunp|grep mysqld|wc -l` -gt 0 ] #過濾程序名為mysqld,轉成數字 then echo "MySQL is Running." else echo "MySQL is Stopped." service mysqld start fi
2)開發監控NginxWeb 服務的指令碼。
指令碼nginx_mon.sh如下:
#!/bin/bash
if [ `netstat -tlunp|grep nginx|wc -l` -gt 0 ] #過濾程序名為nginx,轉成數字
then
echo "Nginx is Running."
else
echo "Nginx is Stopped."
/data/program/nginx/sbin/nginx
fi
相關推薦
開發監控MySQL 或者 Nginx Shell 指令碼
思路可以參考表1: 表 1 監控Web服務和MySQL資料庫服務是否異常的常見方法 埠監控 1)伺服器本地監控服務埠的常見命令netstat、ss、lsof 2)從遠端監控伺服器本地埠的命令有
zabbix監控mysql,nginx
ams word /dev/null -s openssl handle extract then active 剛開說mysql監控的時候 很容易遇到問題 而問題大部分出現在mysql的配置上面,看到我下面做的希望對你們有所幫助,哈哈 不聊了 好好學習 現在開始 1.創建
(轉)開發監控Linux 內存 Shell 腳本
amp 分析 分鐘 target line net ocl 發送郵件 使用情況 原文:http://blog.csdn.net/timchen525/article/details/76474017 題場景: 開發Shell 腳本判斷系統剩余內存的大小,如果低於100MB,
Linux MySQL資料庫備份shell指令碼
我們部署的伺服器常用是Linux系統。於是,為了保障資料安全,需要每隔一段時間,就對MySQL資料庫的資料進行備份。MySQL下的mysqldump命令,能讓我們有效的對想要的資料庫或者表進行備份。但由於這個操作具有間隔性和重複性,我們不可能每次手動去執行mysqldump命令來進行資料
Linux安裝nginx(shell指令碼)&軟體安裝之nginx
1.編寫installNginx.sh檔案 #!/bin/bash mydir=`pwd` if [ ! -f "$mydir/nginx-1.10.2.tar.gz" ];then
centos7 mysql自動備份 MySQL自動備份shell指令碼
MySQL自動備份shell指令碼 在資料庫的日常維護工作中,除了保證業務的正常執行以外,就是要對資料庫進行備份,以免造成資料庫的丟失,從而給企業帶來重大經濟損失。通常備份可以按照備份時資料庫狀態分為熱備和冷備,按照備份資料庫檔案的大小分為增量備份、差異備份和全量備份.一
mysql原始碼安裝shell指令碼
#!/bin/bash ############mysql安裝文件,請把mysql和cmake的壓縮包放在虛擬機器/tmp下############# rm -rf /etc/yum.repos.d/* #修改yum配置檔案 cat <<EOF > /
mysql -- 通過linux shell 指令碼,匯出部分資料
1.構建我的shell 指令碼 (1)最初情況 下面這些語句還是有不少缺點的,從中可以看出來有大量的重複,應該想辦法簡化,嘗試去使用變數。簡化之後,達到的目的應該是最少的修改。 #!/bin/bash mysqldump -h172.24.64.179 -umisc -p1
mysql資料遷移shell 指令碼
有兩個指令碼第一個mysql_db_trans.sh,第二個mysql_all_db_trans.sh。這個兩個指令碼可能存在缺陷,放在這裡只是為了方便自己檢視。 mysql_db_trans.sh #!/bin/sh tmp_dbname=$1 db_old_name=
Linux Centos7通過shell指令碼來監控mysql的執行狀態
vim checkmysql.sh #!/bin/sh #create by mingongge at 2018-10-10 port=`netstat -lnt|grep 3306|wc -l` if [ $post -ne 1 ] ;then now
zabbix監控mysql指令碼(shell)
#MYSQL_SOCK="/alidata1/mysql3360/mysql.sock" MYSQL_PATH='mysqladmin' MYSQL_USER='zabbix' MYSQL_PWD='[email protected]@' MYSQL_HOST='10.162.19
linux-shell指令碼,監控nginx,tomcat,redis,php-cli,磁碟狀態
郵件配置: [[email protected] sh]# which mail /bin/mail You have new mail in /var/spool/mail/root [[email protected] sh]#
Nginx+lua(openresty)開發環境搭建shell指令碼
下面是自動搭建的指令碼,採用的是直接殺死本機執行80埠的程式。 #!/bin/bash mkdir -p /usr/servers cd /usr/servers/ yum install -y perl pcre-devel openssl openss
shell指令碼一鍵安裝LNMP(liunx+nginx+mysql+php)環境
#!/bin/bash # author:kwin # Email:[email protected] src="/usr/local/src/" cd $src #找到指定程序,並殺死 #findPortKill 80 findPortKi
shell指令碼實現linux系統監控
一、系統監控要監控什麼? 硬體 CPU: [[email protected] ~]# top | sed -n '3p' 記憶體: 檢視系統記憶體的使用情況: 硬碟: 檢視磁碟的使用情況 系統 負載: 系統執行時間: 檢視作業系統的版
shell指令碼開發基本規範及習慣
1.開頭指定指令碼直譯器 2.開頭加版本版權等資訊 eg:日期(Date),作者(Author),聯絡方式(Mail),功能(Func),版本(Version) 提示:可配置vim編輯檔案時自動加上以上資訊,方法時修改~/.vimrc配置檔案 3.指令碼中儘量不要用中文註釋,儘可能有英文註釋
Shell 指令碼中執行mysql語句
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
mysql備份shell指令碼
#!/bin/sh # 備份保留時間 7天 BTIME=7 # 檔名 DATENAME=`date "+%Y-%m-%d_%H_%M"` # 備份目錄 _DIR="/data/" # 資料庫資訊 USER="root" PWD="123456" DATABASE="test" # 備份並
shell 指令碼通過nginx日誌封訪問頻率過高的IP
#/bin/bash #日誌檔案 logfile=/usr/local/tengine/logs last_minutes=1 #開始時間 start_time=`date -d"$last_minutes minutes ago" +"%H:%M:%S"` echo $start_t
shell指令碼,mysql資料庫的備份,並壓縮
db_user="root"db_passwd="xxx"db_host="localhost" databases="xxx-prod" backup_dir="/backup/mysql_backup" backip_test="/home/ttx/app/mysql_backup/today"