程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle跟蹤事件的兩種方法

Oracle跟蹤事件的兩種方法

編輯:Oracle數據庫基礎

以下的文章主要是對Oracle跟蹤的相關事件與Oracle跟蹤文件的相關內容的具體介紹,如果你對這一相關技術心存好奇的話,以下的文章將會揭開它的神秘面紗。望你浏覽完以下的內容會有所收獲。

一、Oracle跟蹤文件

Oracle跟蹤文件分為三種類型,一種是後台報警日志文件,記錄數據庫在啟動、關閉和運行期間後台進程的活動情況,如表空間創建、回滾段創建、某些alter命令、日志切換、錯誤消息等。在數據庫出現故障時,應首先查看該文件,但文件中的信息與任何錯誤狀態沒有必然的聯系。

後台報警日志文件保存BACKGROUND_DUMP_DEST參數指定的目錄中,文件格式為SIDALRT.LOG。另一種類型是DBWR、LGWR、SMON等後台進程創建的後台跟蹤文件。後台跟蹤文件根據後台進程運行情況產生,後台跟蹤文件也保存在BACKGROUND_DUMP_DEST參數指定的目錄中,文件格式為siddbwr.trc、sidsmon.trc等。

還有一種類型是由連接到Oracle的用戶進程(Server Processes)生成的用戶跟蹤文件。這些文件僅在用戶會話期間遇到錯誤時產生。此外,用戶可以通過執行Oracle跟蹤事件(見後面)來生成該類文件,用戶跟蹤文件保存在USER_DUMP_DEST參數指定的目錄中,文件格式為oraxxxxx.trc,xxxxx為創建文件的進程號(或線程號)。

二、Oracle跟蹤事件

Oracle提供了一類命令,可以將Oracle各類內部結構中所包含的信息轉儲(dump)到跟蹤文件中,以便用戶能根據文件內容來解決各種故障。設置跟蹤事件有兩種方法,一種是在init.ora文件中設置事件,這樣open數據庫後,將影響到所有的會話。設置格式如下:

  1. EVENT="eventnumber trace name eventname [forever,] [level levelnumber] : ......."  

通過:符號,可以連續設置多個事件,也可以通過連續使用event來設置多個事件。

另一種方法是在會話過程中使用alter session set events命令,只對當前會話有影響。設置格式如下:

  1. alter session set events '[eventnumber|immediate] trace 
    name eventname [forever] [, level levelnumber] : .......'  

通過:符號,可以連續設置多個事件,也可以通過連續使用alter session set events 來設置多個事件。

格式說明:eventnumber指觸發dump的事件號,事件號可以是Oracle錯誤號(出現相應錯誤時跟蹤指定的事件)或oralce內部事件號,內部事件號在10000到10999之間,不能與immediate關鍵字同用。

immediate關鍵字表示命令發出後,立即將指定的結構dump到跟蹤文件中,這個關鍵字只用在alter session語句中,並且不能與 eventnumber、forever關鍵字同用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved