等待事件之日誌等待事件解決的方法

2021-09-06 18:31:02 字數 1173 閱讀 1547

我堅持每天看3套rac的awr,總結了一下。

查詢日誌等待事件的sql:

9i:select * from v$event_name where name like '%log%';(大概14個左右)

10g: select name,wait_class from v$event_name where name like '%log%';(大概35個左右)

11g: select name,wait_class from v$event_name where name like '%log%'; (大概30個左右)

碰到比較多的是下面幾個:

一、log file switch(archiving needed)

即日誌切換時,切換到目標日誌組還未完畢歸檔,那肯定要等待嘛。

可能原因:redo,archive分割槽i/o效能較差、歸檔寫出緩慢、日誌組數量設定不合理

解決方法: 1、新增�日誌組或日誌組成員的大小

2、把archive log調整到io效能較高的磁碟上,比方儲存上

3、調整log_archive_max_processes引數

二、log file switch(checkpoint incomplete)

說明日誌切換時,切換到目標日誌組時,那個日誌組所保護的髒資料還沒寫入

可能原因:dbwn寫出太慢、i/o存在問題

解決方法: 1、新增�額外的dbwn

2、新增�日誌組或日誌組成員大小

三、log file sync

可能原因:lgwr寫出效率低下、commit過於頻繁等

解決方法:1、提高lgwr寫出效率,使用io效能較好的磁碟

23、使用nologging/unreoverable選項()

四、log file single write

產生原因:更新日誌檔案頭時產生的等待

五、log file parallel write

產生原因:並行寫入多個日誌組成員的等待

六、log buffer space

產生原因:資料庫產生的日誌比lgwr寫入的日誌速度要快,或日誌切換太慢

解決方法:1、增大log buffer

2、磁碟i/o存在瓶頸

備註一下:db規劃是redo分割槽,arch分割槽空間所佔的硬碟盡量做raid1

未完待續

等待事件之日誌等待事件解決辦法

我堅持每天看3套rac的awr,總結了一下。查詢日誌等待事件的sql 9i select from v event name where name like log 大概14個左右 10g select name,wait class from v event name where name lik...

等待事件 buffer busy waits

事件引數說明 事件號 145 事件名 buffer busy waits 引數一 file 引數二 block 引數三 9i 原因碼,10g block class 事件說明 一 oracle會話正在等待pin住乙個緩衝區,會話必須在讀取或修改緩衝區之前將該緩衝區pin住。二 在任何時侯只有乙個程序...

GC Blocks Lost等待事件

在oracle rac環境中,無論我們從awr自動負載效能報告 statspack或者grid control中都可以找到oracle資料庫軟體所收集的全域性快取工作負載統計資訊 global cache work load statistics 其中就包含了全域性快取塊丟失 global cach...