《重做日志:分析日志容量及切換頻率》要點:
本文介紹了重做日志:分析日志容量及切換頻率,希望對您有用。如果有疑問,可以聯系我們。
在Oracle數據庫的世界里,Redo Log是一個非常核心的存在,通過Redo日志,Oracle實現了數據變更的延遲寫出,通過日志的順序寫推延了數據塊離散寫的性能影響,從而實現了高效率運作.
Redo Log首先在Buffer中生成,然后寫出到磁盤上的Redo Log File – 重做日志文件,那么如何配置日志文件就成為數據庫優化和健康巡檢的重要內容之一.如果日志文件過小,就會出現重做日志頻繁切換,檢查點不能及時完成等問題,影響到數據庫的正常運行.
最常見的,如果在告警日志中看到?Checkpoint not complete 的提示,就意味著存在日志切換重用時的阻塞.如果頻繁出現,那么就必須采取主動的優化措施,如加大日志文件大小、增加日志組等.
在?白求恩 – Bethune 智能巡檢平臺 上,我們專門設定了于此有關的檢查分析項目,幫助用戶及時簡單的剖析在日志設置上可能存在的問題.
在【數據庫空間資源 – 重做日志】分析項,可以找到和Redo相關的分析項:
如果在日志設置上存在問題,Bethune會給出分析提示,如以下數據庫的日志組大小不一致,三組日志大小是50M,另外兩組日志大小是100M,這是不規范的配置,可能來自于某次臨時的日志組增加,事實上需要DBA進行審視和整改:
對于日志切換頻率,Bethune 給出了詳細的趨勢分析,多日數據的趨勢作為對比展現,可以清晰的幫助我們看到系統的日志變化和波動點:
將鼠標移動到峰值處,我們可以看到在每日的21:00,是數據庫幾種的日志產生高峰,在該時段可能存在批處理作業:
通過點選具體的日期,我們可以在趨勢圖保留兩個日期,分析其業務變化在日志生成上的改變,如圖的兩個日期,日志切換的波動非常吻合,這說明這個業務系統的運行是非常規律的:
當然,如果伴隨著日志切換,數據庫告警日志中出現了『檢查點未完成』等待,在分析提示中會以性能標簽提示出來,在這種情況下,我們通常需要進行日志配置的調整以消除這類問題:
以上這段提示給出了非常具體的建議:
在當前實例告警日志中發現了 46 次檢查點未完成的提示(檢查點未完成導致聯機日志無法切換,會引起數據庫上一切活動會話的等待,造成業務中斷).其中在 15 點檢查點未完成次數最多,共發現了 46 次檢查點未完成.檢查點未完成時段內,一小時日志切換次數峰值為 50 次,平均每隔 1.2 分鐘切換一次.為了避免日志無法切換導致業務中斷,建議再添加 2 組聯機日志.
Bethune 的日志分析,一個頁面幫你了解日志組的配置和切換頻度,以及數據庫的相應性能表征,Oracle數據庫無微不至的智能診斷,從白求恩開始!
Bethune官網:bethune.enmotech.com
文章來自微信公眾號:數據和云