zabbix的使用經驗(續)
Zabbix的使用經驗
文中談到的zabbix的版本為:zabbix1.6.3
隨著線上zabbix系統運行的時間越長,zabbix的數據庫也在逐漸增大,這時我們會發現,越到后面,備份數據庫時間就花的越長.特別是上千臺機器的情況,
然而在大數據量的備份過程中,經常會出現檢測數據延遲,導致檢測出錯,產生不必要的誤報.為了不產生誤報,只能停止zabbix_server服務,進行備份.如果恰巧在這段時間,線上的應用服務器出現了故障,將不能及時發現與處理故障.
如何才能實現快速的備份zabbix數據庫,而且可以在不停止服務的情況下完成備份呢?
其實zabbix數據庫里面***的表,就是歷史記錄的表了, 這些表中的數據,全都存儲著之前所檢測到的歷史數據.所以,現在就很清楚了,你可以選擇清空這些表,這樣做的話,所有客戶端的歷史檢測數據,都會被清空,空間自然就小了,
如果你不想失去這些數據的話,那么也可以在備份數據庫的時候,選擇不備份這幾張表.或是只備份這幾張表的表結構,里面的數據不做備份.選擇哪一種,可以根據實際情況而定.
下面的操作是清空歷史數據的表,主要就是以下這幾張表,清空后,備份一下數據庫,只要不到三分鐘的時間,就可以搞定了.....
- use zabbix;
- truncate table history;
- optimize table history;
- truncate table history_str;
- optimize table history_str;
- truncate table history_uint;
- optimize table history_uint;
- truncate table trends;
- optimize table trends;
- truncate table trends_uint;
- optimize table trends_uint;
- truncate table events;
- optimize table events;
(注:此方法在1.6.3版本上應用正常,其它版本未做測試,如因此方法,丟失數據,本人概不負責,操作前切記,先備份數據庫)
【編輯推薦】