使用logminer进行日志分析

以下的操作均在oracle11g通过
logminer的用途主要是以下几个方面
1. 跟踪数据库的变化:可以离线的跟踪数据库的变化,而不会影响在线系统的性能。
2. 回退数据库的变化:回退特定的变化数据,减少point-in-time recovery的执行。这个用途一部分可以通过闪回替代。
3. 优化和扩容计划:可通过分析日志文件中的数据以分析数据增长模式。

分析可以分析归档日志(archive logfile)也可以分析联机重做日志(redo logfile)
分析归档日志网上已经有很多例子,不在赘述,下面说明分析redo日志方法


1.查询当前的日志group#
  select group# from v$log where status='CURRENT'


2.根据group#找到物理文件路径
  select member from v$logfile where group#=2  --/home/u01/app/oradata/orcl/redo02.log


3.增加文件到分析列表
  exec dbms_logmnr.add_logfile('/home/u01/app/oradata/orcl/redo02.log',dbms_logmnr.new);

4.开始分析
  exec dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog);


5.查看内存
  select count(*) from v$logmnr_contents;


6.等一会转储内容到临时表
  create table tmp_logmnr as select * from v$logmnr_contents;


7.结束分析
  exec dbms_logmnr.end_logmnr;

  后续的内容我们都可以在tmp_logmnr中处理了。
  

原文地址:https://www.cnblogs.com/tippoint/p/2981991.html