您好,登錄后才能下訂單哦!
LogMiner組件檢查:
首先我們要確認數據庫是否已經擁有必須的包,如果沒有則需要運行兩個包:@?/rdbms/admin/dbmslm.sql腳本用來安裝DBMS_LOGMNR包,這個包用戶來分析日志文件;@?/rdbms/admin/dbmslmd.sql腳本用來安裝DBMS_LOGMNR_D包,這個包主要是創建LogMiner所必須的數據字典。
查詢以下語句,如果無查詢對應數據字典表,則執行上述兩個腳本
SELECT DISTINCT name
FROM DBA_SOURCE
WHERE type = 'PACKAGE'
AND upper(text) LIKE upper('%logmnr%')
order by name
針對在線聯機日志進行分析:
SQL> exec dbms_logmnr.add_logfile(logfilename=>'/opt/oracle/oradata/lych/redo01.log', options=>dbms_logmnr.new);
執行分析:
SQL> execute dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog);
通過v$LOGMNR_CONTENTS查看對應日志(只適合當前會話查詢)
停止分析:
SQL>execute dbms_logmnr.end_logmnr;
針對歸檔日志進行分析:
SQL>execute dbms_logmnr.add_logfile(logfilename=>'/opt/oracle/oradata/lych/archivelog/2019_12_03/abc.arc,options=>dbms_logmnr.NEW);
執行分析:
SQL> execute dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog);
通過v$LOGMNR_CONTENTS查看對應日志(只適合當前會話查詢,相關數據存在于私有會話PGA中)
停止分析:
SQL>execute dbms_logmnr.end_logmnr;
延伸如何分析RMAN備份里的歸檔日志文件呢?
1 查詢select * from v$archived_log ,通過需求場景過濾出對應的歸檔日志文件信息
2 查詢出來的日志信息在RMAN里找出對應的備份文件,選擇性進行catalog
CATALOG backuppiece '/u01/rmanbak/191203_arc_lych_1_1.rbf';
3 restore archivelog from logseq number1 until logseq number2 thread n;
4 CATALOG ARCHIVELOG '+FRA/archivelog/'; (可不操作)
這時候需要的歸檔日志已經還原出來了,那么就可以運用以上的方法進行日志挖掘了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。