成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

快速通過zabbix獲取數據庫連接的信息及部分擴展

瀏覽:249日期:2023-04-06 15:09:31

背景

隨著應用系統的不斷增加,原本不告警的active threads,開始頻繁告警(一天2次左右)。雖然告警次數不多,而且該監控項舍得閾值不高(不超過50),但對于運維來說數據庫的threads-running是一個必須要重視的點。

一般告警出現在半夜,不可能靠人工去記錄threads-running過線后,到底哪些連接正在處理。市面上也沒好的工具能自動記錄這些數據,所以這時候就需要zabbix的action功能了。

zabbix配置

1. 定義監控項

這里偷個懶,直接使用了percona模板中Threads Running監控項:

2. 定義觸發器

同樣適用percona的觸發器設置:

3. 創建action

按照下圖的順序創建action:

4. action條件

A、B、C、D條件都滿足,才會觸發動作,這里盡量篩選的詳細點,免得出現zabbix錯誤調用的情況。

5. 完善操作內容

這里適用ssh方式,當然你也可以在類型欄使用自定義腳本選項,就是要多給zabbix客戶端賦sudo權限。

命令欄填的是/bin/sh /opt/connect.sh命令,這個很好理解,直接調用connect.sh腳本,具體腳本附在后文中。

6. 修改zabbix-agent配置

進入被監控服務器:

vim /etc/zabbix/zabbix_agentd.conf        EnableRemoteCommands=1  #增加這項參數,意思是允許zabbix server遠程命令    service zabbix-agent restart

至此,zabbix相關的配置均已完成,接下來只需要將寫好的處理腳本放入/opt目錄即可。

功能腳本

這次要實現的是,在連接超過50個時,輸出到底是哪個賬號、哪個ip、在執行哪個sql等信息。腳本如下:

#!/bin/sh    export PATH=$PATH:/usr/bin    da=`date +%Y%m%d`    dc=`date +%Y-%m-%d" "%H:%M:%S`        echo $dc"-------------------------------我是分割線------------------------------------" >> /tmp/ok_$da.log        /usr/local/mysql/bin/mysql -uroot -pXXX -e "select * from information_schema.PROCESSLIST where COMMAND != "Sleep" order by TIME DESC;" >> /tmp/ok_$da.log

擴展

既然zabbix在報警時可以調用腳本,那是不是可以讓zabbix處理點更為復雜的工作?

數據庫連接、鎖、存儲引擎等信息

#!/bin/shexport PATH=$PATH:/usr/binda=`date +%Y%m%d`dc=`date +%Y-%m-%d" "%H:%M:%S`echo $dc"-------------------------------我是分割線------------------------------------" >> /home/zabbix/engine_log/engine_log_$da.log/usr/bin/mysql -hlocalhost -uroot -pXXX -e "show engine innodb status \G;" >> /home/zabbix/engine_log/engine_log_$da.logecho -e "\n\n\n" >> /home/zabbix/engine_log/engine_log_$da.logecho $dc"-------------------------------我是分割線------------------------------------" >> /home/zabbix/processlist/processlist_$da.log/usr/bin/mysql -hlocalhost -uroot -pXXX -e "select * from information_schema.processlist where time>=0 and command !="sleep" order by time desc \G;" >> /home/zabbix/processlist/processlist_$da.logecho -e "\n\n\n" >> /home/zabbix/processlist/processlist_$da.logecho $dc"-------------------------------我是分割線------------------------------------" >> /home/zabbix/lock/lock_$da.log/usr/bin/mysql -hlocalhost -uroot -pXXX -e "select "Blocker" role, p.id, p.user, left(p.host, locate(":", p.host) - 1) host, tx.trx_id, tx.trx_state, tx.trx_started, timestampdiff(second, tx.trx_started, now()) duration, lo.lock_mode, lo.lock_type, lo.lock_table, lo.lock_index, tx.trx_query, tx.trx_tables_in_use, tx.trx_tables_locked, tx.trx_rows_locked from information_schema.innodb_trx tx, information_schema.innodb_lock_waits lw, information_schema.innodb_locks lo, information_schema.processlist p where lw.blocking_trx_id = tx.trx_id and p.id = tx.trx_mysql_thread_id and lo.lock_trx_id = tx.trx_id union all select "Blockee" role, p.id, p.user, left(p.host, locate(":", p.host) - 1) host, tx.trx_id, tx.trx_state, tx.trx_started, timestampdiff(second, tx.trx_started, now()) duration, lo.lock_mode, lo.lock_type, lo.lock_table, lo.lock_index, tx.trx_query, tx.trx_tables_in_use, tx.trx_tables_locked, tx.trx_rows_locked from information_schema.innodb_trx tx, information_schema.innodb_lock_waits lw, information_schema.innodb_locks lo, information_schema.processlist p where lw.requesting_trx_id = tx.trx_id and p.id = tx.trx_mysql_thread_id and lo.lock_trx_id = tx.trx_id \G;" >> /home/zabbix/lock/lock_$da.logecho -e "\n\n\n" >> /home/zabbix/lock/lock_$da.logval=`/usr/bin/mysql -hlocalhost -uroot -pXXX -N -e "show variables like "general_log"" |awk "{print $2}"`if [ $val = "OFF" ];then/usr/bin/mysql -hlocalhost -uroot -pXXX -e "set global general_log=0;"elseexit 0;fi

在數據庫壓力大的時候,可以記錄哥哥鎖信息、連接信息還有存儲引擎信息。所謂壓力大,我們可以將觸發項定以下幾個:

  • threads-running:running的連接過多
  • Innodb Row Lock Waits:鎖等待時間過長
  • Com Select\Update\Insert\Delete:增產查改過多
  • Incoming\Outgoing network traffic:進出流量不正常時

這些都可以作為觸發條件。

殺死長sql

#!/bin/shexport PATH=$PATH:/usr/binda=`date +%Y%m%d`dc=`date +%Y-%m-%d" "%H:%M:%S`user="root"password="XXX"val=`mysql -u$user -p$password -N -e "select count(*) from information_schema.processlist where time>=180 and command ="Query" and user in ("job_name","report")" | awk "{print $1}"`if [ $val -gt 0 ];thenecho $dc"-------------------------------我是分割線------------------------------------" >> /home/zabbix/kill_log/long_query_$da.logmysql -u$user -p$password -e "select * from information_schema.processlist where time>=180 and command ="Query" and user in ("job_name","report") order by time desc \G;" >> /home/zabbix/kill_log/long_query_$da.logecho -e "\n\n\n" >> /home/zabbix/kill_log/long_query_$da.logcount=`mysql -u$user -p$password -N -e "select id from information_schema.processlist where time>=180 and command ="Query" and user in ("job_name","report")"`for id in $count;do   mysql -u$user -p$password -e "kill $id"doneelseexit 0;fi

有時候一些job或者報表sql會長時間在那里執行,導致影響到其他業務,我們可以簡單做下判斷,當數據庫連接激增,多數是由于有大sql夯在那里,這時候可以讓zabbix調用這個腳本去殺死特殊賬號發起的超過180秒的sql。至于kill sql的條件可以在腳本中自定義。

當然了,像這種明知需要很長時間才能處理完的sql,應該放在從庫中去執行。

刪除無用日志

#!/bin/shlogdir="/mysql/logs"binlog="/mysql/binlog"var_percent=`df -h |grep var|grep dev/sda|awk "{print $5}"|awk -F% "{print $1}"`if [ -z $var_percent ] || [ $var_percent -lt 90 ];thenecho "never mind"exit 0fidate >>$binlog/del_list.txtlist=`ls -l --time-style="+%Y-%m-%d %H:%M:%S" $binlog/mysql-bin.0?????|awk "{print $6","$7","$8}"`for i in $listdofiletime=`echo $i|awk -F "," "{print $1,$2}"`filetimestamp=`date -d "$filetime" +%s`cur_time=`date +%s`if [ $(($cur_time - $filetimestamp)) -gt $((3*24*3600)) ];thenfilename=`echo $i|awk -F, "{print $3}"`echo "$filename will delete">>$binlog/del_list.txt/bin/rm $filenamefidoneif [ -f $logdir/mysql-slow.log ];thenslow_log_size=`stat $logdir/mysql-slow.log|grep "Size:"|awk -F ":" "{print $2}"|awk "{print $1}"`if [ $slow_log_size -gt $((2*1024*1024*1024)) ];thenecho "$logdir/mysql-slow.log">>$logdir/del_list.txt/bin/rm $logdir/mysql-slow.logfifi

有些時候binlog和slowlog沒設置自動刪除,時間長了會把磁盤空間占滿。這時候我們可以關聯Free disk space on /mysql監控項,查過閾值后,調用上面的腳本去清理無用的binlog和slowlog。

在有些依賴binlog的情況下,比如主從中斷,之后還需要恢復的情況下,需要謹慎使用。

參考鏈接 :

通過zabbix獲取數據庫連接的信息及部分擴展 :https://www.jb51.net/article/207412.htm

到此這篇關于通過zabbix獲取數據庫連接的信息及部分擴展的文章就介紹到這了,更多相關zabbix數據庫連接內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: Zabbix
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
日韩三级视频中文字幕| 激情一区二区三区| 欧美日韩视频不卡| 成人黄色av网站在线| 国产欧美视频一区二区| 亚洲性人人天天夜夜摸| 欧美777四色影| 亚洲国产aⅴ成人精品无吗| 欧美疯狂性受xxxxx喷水图片| 日韩精品中文字幕一区二区三区| 91丨九色丨国产丨porny| 一区二区成人在线| 91精品国产麻豆| 国产精品日韩| 94色蜜桃网一区二区三区| 日韩精品视频网站| 日韩欧美在线网站| 日韩精品一区二区三区视频播放| 6080午夜不卡| 国产精品一级| 国产999精品久久| 亚洲国产视频一区二区| 舔着乳尖日韩一区| 亚洲欧洲国产日本综合| 日韩一区二区三区视频| 欧美电影免费观看高清完整版| 精品久久一区二区三区| 色综合av在线| 国产日韩欧美综合精品| 久久综合九色综合欧美狠狠| 亚洲小说欧美另类社区| 国产美女精品| 69堂国产成人免费视频| 久久久久久久综合日本| 日韩一区二区三区观看| 国产亚洲福利社区一区| 2024国产精品视频| 日韩一区二区免费在线电影| 国产午夜精品久久久久久免费视| 亚洲男人的天堂在线aⅴ视频| 欧美经典三级视频一区二区三区| 日韩一区二区三区av| 国产精品污污网站在线观看| 国产欧美视频在线观看| 亚洲aaa精品| 爽好久久久欧美精品| 国产成人综合在线播放| 国产美女视频91| 韩国av一区二区| 国模一区二区三区白浆| 欧美精品一区在线发布| 欧美日韩一区二区高清| 亚洲视频一二三区| 国产精品狼人久久影院观看方式| 国产欧美一区二区三区网站| 亚洲国产欧美在线人成| 国产精品日日摸夜夜摸av| 蜜桃av一区二区在线观看| 午夜在线成人av| 91在线观看免费视频| 91精彩视频在线| 欧美天天综合网| 9191国产精品| 一区二区三区免费看视频| 成人一级片在线观看| 99精品欧美一区| 在线亚洲+欧美+日本专区| 欧美人妖巨大在线| 欧美电影免费观看高清完整版在线观看 | 免费亚洲一区| 欧亚一区二区三区| 国产精品视频第一区| 欧美理论在线| 欧美日韩免费在线视频| 亚洲制服丝袜一区| 日本亚洲电影天堂| 国产福利一区二区三区视频 | 欧美一区永久视频免费观看| 亚洲一区免费在线观看| 国语自产精品视频在线看抢先版结局 | 美女一区二区视频| 国产一区二区黄色| 国产精品久久久久久久久久久免费看| 狠狠色伊人亚洲综合成人| 久久大逼视频| 精品视频色一区| 午夜av电影一区| 亚洲自啪免费| 一区二区三区四区高清精品免费观看| 欧美69视频| 久久精品一区二区三区不卡 | 欧美日本一道本| 九九九久久久精品| 欧美/亚洲一区| 欧美精品一区二区久久久| 亚洲国产精品久久久久婷婷884 | 国产精品久久夜| 欧美性天天影院| 国产精品第13页| 韩日午夜在线资源一区二区| 国产欧美视频一区二区| 91视频精品在这里| 日本一区二区免费在线观看视频 | 91精品在线观看入口| 国产在线精品国自产拍免费| 欧美日韩在线播放一区| 国产一区中文字幕| 欧美一级片在线观看| 国产.欧美.日韩| 欧美大片一区二区| 99re热这里只有精品视频| 久久久久久久电影| 欧美三级特黄| 一区二区三区在线视频观看58| 日韩亚洲欧美精品| 在线综合视频播放| k8久久久一区二区三区| 日本丶国产丶欧美色综合| 青青草97国产精品免费观看| 狠狠色噜噜狠狠色综合久| 国产精品伦理在线| 亚洲永久字幕| 精品一区二区av| 精品久久久久一区二区国产| 欧美国产综合| 一区二区三区四区中文字幕| 午夜宅男久久久| 欧美大片拔萝卜| 国产一区二区中文字幕免费看| 亚洲精品免费电影| 欧美精品国产一区二区| 亚洲情趣在线观看| 在线观看一区不卡| av午夜一区麻豆| 亚洲精品欧美专区| 欧美一区二区三区四区在线观看| 99久久99久久久精品齐齐| 亚洲欧美在线视频| 国产一区二区三区日韩| 国产丝袜在线精品| 免费亚洲网站| 成人h版在线观看| 日韩美女视频一区二区| 色婷婷国产精品久久包臀| 国产精品69久久久久水密桃| 在线观看亚洲a| 99v久久综合狠狠综合久久| 一区二区三区成人| 欧美一二三四区在线| 亚洲欧洲三级| 亚洲女与黑人做爰| 777a∨成人精品桃花网| 亚洲欧美日韩在线观看a三区| 麻豆91精品91久久久的内涵| 国产视频一区在线观看| 91成人在线免费观看| 91麻豆精品秘密| 蜜臀av一区二区| 成人免费在线视频观看| 欧美日韩国产美| 国产精品亚洲产品| 成人激情综合网站| 日韩av电影天堂| 国产精品乱码一区二区三区软件| 欧美色综合久久| 一区二区三区四区五区视频| 久久av一区二区三区| fc2成人免费人成在线观看播放 | 欧美日韩 国产精品| 国产综合色精品一区二区三区| 亚洲日本护士毛茸茸| 日韩亚洲欧美中文三级| 在线观看日韩高清av| 亚洲久久视频| 欧美日韩视频| 国产盗摄视频一区二区三区| 婷婷中文字幕一区三区| 国产精品福利一区| 久久综合色一综合色88| 欧美吻胸吃奶大尺度电影| 国产精品推荐精品| 亚洲成在人线在线播放| 自拍av一区二区三区| 国产香蕉久久精品综合网| 欧美日本乱大交xxxxx| 在线观看网站黄不卡| 国产精品久久亚洲7777| 欧美少妇一区| 欧美日韩第一区| www.激情成人| 成人黄色777网| 高清av一区二区| 国产盗摄精品一区二区三区在线| 日韩电影在线观看网站| 香蕉久久夜色精品国产使用方法 | 午夜一级久久| 国产伦精品一区二区| 亚洲中字黄色| 国产美女在线精品免费观看| 中国女人久久久|