利用外部表讀取告警日誌檔案
資料庫的告警日誌以文字的格式儲存到檔案系統中,雖然可以很方便的透過作業系統命令進行檢視,而且11g中Oracle甚至還提供了專門的adrci工具,但是對於只能透過SQLPLUS或者其他查詢工具連線到資料庫的人而言,還是非常不方便。
不過其實這個問題可以很容易的透過外部表的方式解決。最簡單的辦法就是將alert檔案中的每一行記錄都當做表中一個VARCHAR2(4000)型別列的一行記錄,這樣就可以輕鬆的透過SQL的方式來訪問告警日誌了。
在建立外部表之前,需要建立一個DIRECTORY,這個目錄的位置就是background_dump_dest初始化引數指定的位置。
SQL> show parameter background_dump_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest
string
D:\ORACLE\PRODUCT\ADMIN\YTK102\BDUMP
SQL> create directory d_alert as 'D:\ORACLE\PRODUCT\ADMIN\YTK102\BDUMP';
目錄已建立。
一旦目錄建立成功後,就可以建立外部表了:
SQL> create table t_alert
2
(text varchar2(1000)
3
)
4
organization external
5
(type oracle_loader
6
default directory d_alert
7
access parameters
8
(records delimited by newline
9
fields (text (1:255) char))
10
location ('alert_ytk102.log'));
表已建立。
SQL> select * from t_alert where rownum < 10;
TEXT
-----------------------------------------------------------------------------
Dump file d:\oracle\product\admin\ytk102\bdump\alert_ytk102.log
Sat Dec 25 15:55:43 2010
ORACLE V10.2.0.5.0 - Production vsnsta=0
vsnsql=14 vsnxtr=3
Windows NT Version V6.1
CPU : 4 - type 586, 2
Physical Cores
Process Affinity : 0x00000000
Memory (Avail/Total): Ph:1594M/2995M, Ph+PgF:4318M/5989M, VA:1911M/2047M
Sat Dec 25 15:55:43 2010
已選擇9行。
現在已經可以正常訪問告警日誌了,為了確認外部表的載入沒有錯誤,可以檢查D_ALERT目錄下的載入日誌:
D:\>cd D:\oracle\product\admin\ytk102\bdump
D:\oracle\product\admin\ytk102\bdump>more T_ALERT_21436_532.log
日誌檔案開啟於 08/25/11 00:15:54
表 T_ALERT 的欄位定義
記錄格式 DELIMITED
BY NEWLINE
檔案中的資料與該平臺的
endianness 格式相同
接受帶有空欄位的行
資料來源中的欄位:
TEXT CHAR (255)
記錄位置 (1, 255)
像 SQL 載入程式一樣修剪空白
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-705735/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用外部表讀日誌檔案
- 使用外部表管理Oracle 告警日誌Oracle
- 使用外部表訪問警告日誌檔案
- RAC的告警日誌檔案
- oracle12告警日誌檔案?Oracle
- Java實時讀取日誌檔案Java
- 使用Oracle的外部表查詢警告日誌檔案Oracle
- 使用外部表管理Oracle 告警日誌(ALAERT_$SID.LOG)Oracle
- Golang 快速讀取處理大日誌檔案工具Golang
- Oracle之外部表警告日誌Oracle
- 日誌檔案太大,壓縮後,限制檔案的大小,但出現日誌檔案已經滿的告警
- dbms_system.ksdwrt:向告警日誌檔案寫指定資訊
- Oracle之外部表監聽日誌Oracle
- Maui 讀取外部檔案顯示到Blazor中UIBlazor
- 用外部表的方式查詢alert日誌檔案中ora-錯誤資訊
- 使用外部表儲存巡檢日誌
- 使用外部表訪問監聽日誌
- 怎麼利用js讀取txt檔案JS
- 【ELK】elastalert 日誌告警AST
- 告警日誌介紹
- 網際網路金融專案——工作日誌(六)玩轉檔案讀取
- 使用Oracle的外部表查詢警告日誌Oracle
- 【Oracle日誌】- 日誌檔案重建Oracle
- 日誌檔案
- 獲取兩天內的告警日誌(bash|shell|oracle)Oracle
- 獲取一週內的告警日誌(python|Oracle)PythonOracle
- springboot 執行 jar 包讀取外部配置檔案Spring BootJAR
- 日誌檔案和歸檔日誌檔案的關係以及如何切換日誌
- 本地檔案包含之包含日誌獲取webshellWebshell
- 用外部表實現Alert日誌的檢視
- 使用外部表檢視ORACLE報警日誌薦Oracle
- 獲取兩天內的告警日誌(AIX|ksh|shell|oracle)AIOracle
- 刪除日誌檔案組與日誌檔案成員
- 【轉】oracle學習筆記(三)之檢查Oracle的告警日誌檔案Oracle筆記
- 管理日誌檔案
- dump日誌檔案
- APACHE日誌檔案Apache
- 告警日誌出現kewastUnPackStats資訊AST