oracle 11g r2 LogMiner的使用(二)

2014-11-24 15:23:23 · 作者: · 浏览: 2
file,logfilename=>'E:\app\Administrator\oradata\orcl\REDO03.LOG');
也可以一次性完成:
BEGIN
dbms_logmnr.add_logfile(
'E:\app\Administrator\oradata\orcl\REDO01.LOG',
DBMS_LOGMNR.new );
dbms_logmnr.add_logfile(
'E:\app\Administrator\oradata\orcl\REDO02.LOG',
DBMS_LOGMNR.addfile );
dbms_logmnr.add_logfile(
'E:\app\Administrator\oradata\orcl\REDO03.LOG',
DBMS_LOGMNR.addfile );
END;
/ www.2cto.com
###说明:
dbms_logmnr.new --用于建一个日志分析表
  dbms_logmnr.addfile --用于加,入用于分析的日志文件
  dbms_logmnr.removefile --用于移出,用于分析的日志文件
删除
execute dbms_logmnr.add_logfile(options =>dbms_logmnr.removefile,logfilename =>'E:\app\Administrator\oradata\orcl\REDO03.LOG');
execute dbms_logmnr.add_logfile(options =>dbms_logmnr.removefile,logfilename =>'E:\app\Administrator\oradata\orcl\REDO02.LOG');
execute dbms_logmnr.add_logfile(options =>dbms_logmnr.removefile,logfilename =>'E:\app\Administrator\oradata\orcl\REDO01.LOG');
####说明:
sql> execute dbms_logmnr.add_logfile(logfilename => 'E:\app\Administrator\oradata\orcl\REDO03.LOG', option => dbms_logmnr.REMOVEFILE);
查看日志文件列表:
select db_name, thread_sqn,filename from v$logmnr_logs;
www.2cto.com
----离线(offline)归档日志文件
BEGIN
dbms_logmnr.add_logfile(
'E:\arch\ARC0000000008_0742739616.0001',
DBMS_LOGMNR.new );
dbms_logmnr.add_logfile(
'E:\arch\ARC0000000009_0742739616.0001',
DBMS_LOGMNR.addfile );
dbms_logmnr.add_logfile(
'E:\arch\ARC0000000010_0742739616.0001',
DBMS_LOGMNR.addfile );
END;
/
5.4启动LogMiner进行分析
5.4.1无限制条件
www.2cto.com
BEGIN
dbms_logmnr.start_logmnr(
dictfilename => 'E:\test\logminer_dict.dat'
);
END;
/
5.4.2 限制条件
BEGIN
dbms_logmnr.start_logmnr(
dictfilename => 'E:\test\logminer_dict.dat',
StartTime => to_date('2011-02-18 16:40:26','YYYY-MM-DD HH24:MI:SS'),
EndTime => to_date('2011-02-18 16:44:41','YYYY-MM-DD HH24:MI:SS ')
);
END;
/
5.5 观察分析结果(v$logmnr_contents)
到现在为止,我们已经分析得到了重作日志文件中的内容。动态性能视图v$logmnr_contents包含LogMiner分析得到的所有的信息。
SELECT sql_redo FROM v$logmnr_contents;
SELECT sql_redo FROM v$logmnr_contents where seg_name='T1';
SELECT sql_redo FROM v$logmnr_contents where username='scott'
and seg_name='scott.t1' and upper(operation)='delete';
www.2cto.com
SELECT sql_redo FROM v$logmnr_contents where seg_name='t1' and upper(operation)='delete';
SELECT sql_redo FROM v$logmnr_contents where username='SYS' and table_name='T1';
6.关闭LogMiner
可以把v$logmnr_contents视图的内容创建一个永久的数据库表将非常有帮助
sql> create table logmnr_contents as select * from v$logmnr_contents;
当完成了重做日志的检查,运行dbms_logmnr 中的end_logmnr
execute dbms_logmnr.end_logmnr();
作者 yangzhawen