資料庫健康檢查(轉)

JohnTam10發表於2011-02-28
      Marshall兄整理的不錯,基本有健康檢查應注意的要點,裡面我稍微也補充了一些。
原文連結:http://www.ioracle.org/archives/176


健康檢查報告究竟應該檢查哪些內容?以下總結一部分,水平一般,能力有限,日後有提高繼續更新。

 

在做健康檢查之前,我們應該對客戶的資料庫環境有一定了解,根據環境不同,檢查的內容也不一樣:

  • 資料庫為單機環境
  • 資料庫為叢集(RAC)環境
  • 有備庫(分邏輯/物理備庫)

鑑於目前為止做過為複雜的健康檢查為在RAC+DataGuard上,所以只介紹上面三種情況。

 

在此之前,我們還有一點需要注意,如果是第一次做健康檢查,需要統計完善資料庫、作業系統環境資訊;如果是日常巡檢,則把重點放在效能上。

下面只講個大概,不做細緻說明,不貼程式碼:

 

第一次健康檢查:

在第一次健康檢查中,我們需要對客戶的資料庫、作業系統等做全面的資訊收集,我們要做到的是:比客戶更瞭解他的資料庫!

需要收集的(補:作業系統資訊可以通過配置檔案或命令呼叫資訊得知,下面為資料庫)資訊包括:

  1. 表空間使用情況:檢視錶空間使用率,對於使用率較高的表空間,檢視其資料檔案是否為自動擴充套件。若其資料檔案為手動擴充套件,需要幫助/提醒客戶注意及時擴充套件。
  2. 檢視控制檔案狀態,位置
  3. 檢視UNDO段資訊
  4. 檢視歸檔模式
  5. 檢視AWR快照設定(10g後有AWR,之前使用statspack)
  6. 檢視回收站物件,提醒客戶及時清理回收站中資料
  7. 檢視資料增長情況。並根據客戶儲存現狀對是否擴容提出建議。
  8. TOP20儲存物件

 補充:目標既然是比使用者更熟悉他們的資料庫,有關業務的檔案應當加以注意,如最大表(是使用者表?)的記錄數和備份檔案位置、狀態(備份重於一切啊)。

日常巡檢:

【單機環境】

在單機環境中,我們重點根據AWR報告、alert日誌等資訊,發現客戶資料庫在執行過程中出現的問題。如果需要,可通過OSWatcher、NMON等對作業系統效能進行評估

  1. 匯出匯入客戶AWR報告資訊(10g之前使用statspack)
  2. 分析客戶物理邏輯讀(注意,客戶業務時間通常為週一至週五,對於邏輯讀高點,需詢問客戶業務情況)
  3. 根據物理邏輯讀,查詢AWR資料,找出問題根源。
  4. 檢查alert日誌,對於其中的ORA錯誤,ERROR錯誤進行分析。對ORA-600錯誤需要重點分析。
  5. 使用OSWatcher,NMON( AIX 和 Linux 效能的免費工具)分析資料庫

 補充:對於AWR報告資訊,很多值得注意的反映資料庫效能,執行狀態的資訊;重點放在高耗時的等待事件和sql資訊上,可作為優化的重要提示資訊。


【RAC環境】此環境下就是需要對另外的節點的重複檢查流程。

在單機基礎上

  1. 兩節點alert日誌及AWR資料
  2. /etc/hosts

 

【備庫】

  1. 記憶體使用情況
  2. 表空間資訊
  3. 磁碟使用
  4. 同步情況
  5. 告警日誌

 

這個健康檢查需要檢查的內容寫的非常簡單,可作為一個參考。這裡面科技含量最高的部分,在於對Oracle知識的積累和長期分析得出的經驗。

 

在遇到問題時,通常通過以下幾種方式搜尋解決方案:

ORA錯誤:http://www.ora-code.com/

Eygle的網站:http://www.eygle.com/

老楊的部落格:http://yangtingkun.itpub.net/

AskTom:http://asktom.oracle.com/pls/apex/f?p=100:1:0:::RP,APP

谷歌:http://www.google.com.hk/


上面的網站都是大家應該常去的哦(基本上eygle的首頁底層就有好多連結了)!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24582392/viewspace-688144/,如需轉載,請註明出處,否則將追究法律責任。

相關文章