Oracle日志挖掘命令(二)

2014-11-24 16:06:29 · 作者: · 浏览: 1
E/archivelog/2013_06_20/o1_mf_1_5_8w4q3sol_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_6_8w4qc0yo_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_7_8w564nnh_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_8_8w56c7gz_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_9_8w56d13f_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_10_8w56mrcn_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_11_8w5bskbb_.arc NO NO
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_12_8w5bstfx_.arc YES YES
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_13_8w5byo0v_.arc NO NO
11 rows selected.
发现有一个归档日志中dictionary_begin和dictionary_end是YES,所以数据字典的信息在这个归档日志中,一会要加入分析队列。
1.3.1.4使用日志建立分析列表
首先把当前的redo文件加入分析列表:
execute dbms_logmnr.add_logfile(logfilename=>'/u01/oradata/mike/redo02.log',options=>dbms_logmnr.new);
然后把包含数据字典信息的归档日志也加进去:
execute dbms_logmnr.add_logfile(logfilename=>'/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_mf_1_12_8w5bstfx_.arc',options=>dbms_logmnr.addfile);
1.3.1.5使用数据字典进行分析
execute sys.dbms_logmnr.start_logmnr(options=>sys.dbms_logmnr.dict_from_online_catalog);
1.3.1.6查看分析结果
selectscn,to_char(timestamp,'yyyy-mm-dd hh24:mi:ss'),sql_redo from v$logmnr_contents
where seg_name='TEST' andseg_owner='SCOTT';
结果:
SCN TO_CHAR(TIMESTAMP,'
-----------------------------
SQL_REDO
----------------------------------------------------------------------------------------------------
1384524 2013-06-20 15:14:59
ALTER TABLE"SCOTT"."TEST" RENAME TO"BIN$35G0QjKlCuLgRAgAJ3D0FA==$0" ;
1384527 2013-06-20 15:14:59
drop table test AS"BIN$35G0QjKlCuLgRAgAJ3D0FA==$0" ;
1.3.1.7结束logmnr
execdbms_logmnr.end_logmnr;
1.3.2数据字典在utl_file_dir中
1.3.2.1设置utl_file_dir
show parameter utl_file_dir
若为空,则设置一下值:
alter systemset utl_file_dir='/u01/logmnr'scope=spfile;
重启实例:
startup force
再次查看show parameter utl_file_dir
1.3.2.2创建数据字典到指定目录
execute dbms_logmnr_d.build(dictionary_filename=>'newdict.ora',dictionary_location=> '/u01/logmnr');
1.3.2.3查看当前redo日志和archive日志
select group#,sequence#,first_change#,statusfrom v$log;
结果:
GROUP# SEQUENCE# FIRST_CHANGE# STATUS
-------------------- ------------- ----------------
1 16 1389548 CURRENT
2 14 1384482 ACTIVE
3 15 1389541 ACTIVE
select name,dictionary_begin,dictionary_endfrom v$archived_log;
结果:
NAME DIC DIC
----------------------------------------------------------------------------------- ---
/u01/fast_recovery_area/MIKE/archivelog/2013_06_20/o1_m