B. 创建列表
| SQL> EXECUTE dbms_logmnr.add_logfile(' F:ORACLEORADATASZGOV92REDO01.LOG ', dbms_logmnr.new); |
C. 添加其他日志文件到列表
| SQL> EXECUTE dbms_logmnr.add_logfile(' F:ORACLEORADATASZGOV92REDO02.LOG ', dbms_logmnr.addfile); |
(2)分析离线日志文件
A.创建列表
|
SQL> EXECUTE dbms_logmnr.add_logfile( ' e:Oracleoradataszgov92archiveARCARC09108.001', dbms_logmnr.new); |
B.添加另外的日志文件到列表
|
SQL> EXECUTE dbms_logmnr.add_logfile( ' e:Oracleoradataszgov92archiveARCARC09109.001', dbms_logmnr.addfile); |
关于这个日志文件列表中需要分析日志文件的个数完全由你自己决定,但这里建议最好是每次只添加一个需要分析的日志文件,在对该文件分析完毕后,再添加另外的文件。
和添加日志分析列表相对应,使用过程 'dbms_logmnr.removefile' 也可以从列表中移去一个日志文件。下面的例子移去上面添加的日志文件F:ORACLEORADATASZGOV92REDO02.LOG
|
SQL>EXEC dbms_logmnr.add_logfile (‘F:ORACLEORADATASZGOV92REDO02.LOG’,dbms_logmnr.removefile); |
创建了要分析的日志文件列表,下面就可以对其进行分析了。
3、使用logminer进行日志分析
(1)无限制条件
| SQL> EXECUTE dbms_logmnr.start_logmnr( DictFileName=>' f:logminerdictionary.ora '); |
(2)有限制条件
通过对过程DBMS_ LOGMNR.START_LOGMNR中几个不同参数的设置(参数含义见表1),可以缩小要分析日志文件的范围。通过设置起始时间和终止时间参数我们可以限制只分析某一时间范围的日志。如下面的例子,我们仅仅分析2004年9月18日的日志,:
|
SQL> EXECUTE dbms_logmnr.start_logmnr( DictFileName => 'f:logminerdictionary.ora', StartTime => to_date('2004-9-18 00:00:00','YYYY-MM-DD HH24:MI:SS') EndTime => to_date('2004-9-18 23:59:59','YYYY-MM-DD HH24:MI:SS ')); |
也可以通过设置起始SCN和截至SCN来限制要分析日志的范围:
|
SQL> EXECUTE dbms_logmnr.start_logmnr( DictFileName => ' f:logminerdictionary.ora', StartScn => 20, EndScn => 50); |
表1 DBMS_LOGMNR.START__LOGMNR过程参数含义
参数
参数类型
默认值
含义
StartScn
数字型(Number)
0
分析重作日志中SCN≥StartScn日志文件部分
EndScn
数字型(Number)
0
分析重作日志中SCN≤EndScn日志文件部分
StartTime
日期型(Date)
1998-01-01
分析重作日志中时间戳≥StartTime的日志文件部分
EndTime
日期型(Date)
2988-01-01
分析重作日志中时间戳≤EndTime的日志文件部分
DictFileName
字符型(VARCHAR2)
0
字典文件,该文件包含一个数据库目录的快照。使用该文件可以使得到的分析结果是可以理解的文本形式,
