轉載:使用Log Miner分析Oracle日誌

浪漫雙魚發表於2009-04-09
參考網頁:
http://unix-cd.com/vc/www/16/2007-11/9790.html
http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14215/logminer.htm
---------------------------------------------
用SYS登入sqlplus
設定SUPPLEMENTAL
SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
建立DBMS_LOGMNR包
@D:/oracle/product/10.2.0/rdbms/admin/dbmslms.sql  
@D:/oracle/product/10.2.0/rdbms/admin/dbmslm.sql  
@D:/oracle/product/10.2.0/rdbms/admin/dbmslmd.sql  
@D:/oracle/product/10.2.0/rdbms/admin/prvtlm.plb  
檢視UTL_FILE_DIR引數值
show parameter utl;
修改初始化引數UTL_FILE_DIR,指定分析資料的存放處
alter system set UTL_FILE_DIR='d:/oracle/product/logminer' scope=spfile;
重啟資料庫
shutdown immediate
startup
至此相關配置已經就緒,以下就是在需要的時候進行的分析過程,各條語句要單獨執行,等待返回後,再執行下一條命令。
----------------------------------------------
建立資料字典檔案
exec dbms_logmnr_d.build('cseipdict.ora','d:/oracle/product/logminer');
增加日誌檔案
exec dbms_logmnr.add_logfile('D:/oracle/product/oradata/oradb/redo01.log',dbms_logmnr.new);
exec dbms_logmnr.add_logfile('D:/oracle/product/oradata/oradb/redo02.log',dbms_logmnr.addfile);
exec dbms_logmnr.add_logfile('D:/oracle/product/oradata/oradb/redo03.log',dbms_logmnr.addfile);
無條件開始分析
exec dbms_logmnr.start_logmnr(DictFileName => 'd:/oracle/product/logminer/cseipdict.ora');
如要根據時間範圍分析,要先檢視日誌中日期範圍(欄位LOW_TIME和HIGH_TIME)
select * from v$logmnr_logs;
進行時間範圍分析(StartTime和EndTime範圍一定要在日誌中日期範圍之中,如超出範圍,則會提示ORA-01291錯誤)
exec dbms_logmnr.start_logmnr(DictFileName => 'd:/oracle/product/logminer/cseipdict.ora', StartTime => to_date('2008-04-08 22:14:00','YYYY-MM-DD HH24:MI:SS'), EndTime => to_date('2008-04-08 22:59:59','YYYY-MM-DD HH24:MI:SS'));
查詢REDO和UNDO語句
select * from v$logmnr_contents where table_space='CSEIP';
結束分析
exec dbms_logmnr.end_logmnr;

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

相關文章