溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫

發(fā)布時間:2020-03-23 15:59:10 來源:億速云 閱讀:217 作者:小新 欄目:系統(tǒng)運維

如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫?一起跟小編來看看吧。

場景需求

大部分企業(yè)都會存在測試數(shù)據(jù)庫。然而,這些公司的運維人員普遍的做法是編寫一個shell腳本通過mysqldump,這個mysql數(shù)據(jù)庫備份工具結(jié)合linux的crontab這個定時任務(wù)命令,實現(xiàn)每周或者每月對數(shù)據(jù)庫進行備份,如果不監(jiān)控這些測試數(shù)據(jù)庫每周是否備份成功,很可能會在后期的工作中出現(xiàn)問題。因此,今天圍繞這個話題,介紹一下如何通過zabbix監(jiān)控mysqldump數(shù)據(jù)庫的備份。

實驗過程

* 1. 在mysql數(shù)據(jù)庫創(chuàng)建一個演示用的,名為test的數(shù)據(jù)庫,在test數(shù)據(jù)庫創(chuàng)建一個test表。
Mysql的語句
Create database test;  #創(chuàng)建名為test的數(shù)據(jù)庫
Use test;         #使用test數(shù)據(jù)庫
create table test (name varchar(50));  #創(chuàng)建一個只有name字段的test表格

1.1  創(chuàng)建測試數(shù)據(jù)庫test
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫

1.2編寫數(shù)據(jù)庫備份腳本
然后是編寫一個簡單備份數(shù)據(jù)庫的shell腳本(bak.sh),在crontab定時任務(wù)中,設(shè)置腳本執(zhí)行的時間
正常來說(備份的數(shù)據(jù)庫文件名,必須時數(shù)據(jù)庫名加上數(shù)據(jù)庫備份時間命名)
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
Mysqldump –u用戶名 –p密碼 –h數(shù)據(jù)庫ip 數(shù)據(jù)庫名(test) > 備份的數(shù)據(jù)庫存放的位置
如果數(shù)據(jù)庫備份成功,在/tmp/bak_result.txt就會是一個0。反之,非0就是數(shù)據(jù)庫備份失敗。
注意:存放數(shù)據(jù)庫備份的位置最好不要是用戶目錄,否則其他用戶可能無法查看,因此選擇/tmp目錄用來測試
最后要給bak.sh加上執(zhí)行權(quán)限,否則定時任務(wù)無法執(zhí)行
Chmod o+x bak.sh

1.3 設(shè)置定時計劃,為了方便演示效果(備份時間設(shè)置為1分鐘備份一次)
Crontab –e打開定時任務(wù)
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
查看是否備份成功
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫

* 2.創(chuàng)建監(jiān)控項
在zabbix_agent.conf配置自定義鍵值
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫

重啟zabbix_agent
在zabbix_server配置監(jiān)控項
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如上圖所示,mysql備份的值為0,也就是備份成功。
創(chuàng)建告警。如果值非0,那么就是數(shù)據(jù)庫備份失敗
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
為了驗證備份失敗。我們可以執(zhí)行刪除數(shù)據(jù)庫test的操作。那么mysql是否備份成功這個監(jiān)控項的值就會不為0,接著會出現(xiàn)告警。
刪除數(shù)據(jù)庫命令(drop database 數(shù)據(jù)庫名)
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
此時,mysql是否備份成功的監(jiān)控項值不為0。導(dǎo)出的數(shù)據(jù)庫文件也是無效的。
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
如何用zabbix監(jiān)控mysqldump定時備份數(shù)據(jù)庫
觸發(fā)器也出現(xiàn)告警
實驗完畢

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI