LogMiner 分析归档日志或 REDO日志

############################################
--数据库日志分析
--用于分析oracle 数据库归档日志或 REDO日志
--应用于分析数据库归档日志增长过快的原因或查找执行过的SQL等
--分析工具用LogMiner
#############################################


一、从备份的归档日志中抽取归档日志,如果是现成的归档日志(没有备份打包压缩过),则不用执行这一步

点击(此处)折叠或打开

  1. declare
  2. devtype varchar2(256);
  3. done boolean;
  4. BEGIN
  5. devtype:=sys.dbms_backup_restore.deviceAllocate(type=>'',ident=>'T1');
  6. sys.dbms_backup_restore.restoreSetArchivedLog;
  7. sys.dbms_backup_restore.restoreArchivedLogRange;
  8. sys.dbms_backup_restore.restoreBackupPiece(done=>done,handle=>'/home/oracle/orabak/databack/arc_20160201_onqssbnp_1_1.bak',params=>null);
  9. sys.dbms_backup_restore.deviceDeallocate;
  10. END;

二、安装对应的包
--创建DBMS_LOGMNR包,该包用来分析日志文件。

点击(此处)折叠或打开

  1. @$ORACLE_HOME/rdbms/admin/dbmslm.sql

--创建DBMS_LOGMNR_D包,该包用来创建数据字典文件。
@$ORACLE_HOME/rdbms/admin/dbmslmd.sql;

点击(此处)折叠或打开

  1. @$ORACLE_HOME/rdbms/admin/dbmslmd.sql;


三、分析日志文件
--指定要分析的日志文件,如果有多个日志文件要分析,测可以用dbms_logmnr.new新增后,再用 dbms_logmnr.addfile 添加

点击(此处)折叠或打开

  1. exec sys.dbms_logmnr.add_logfile(logfilename => '/u01/app/oracle/arch/1_250_892951721.dbf',options => dbms_logmnr.new);
--添加要分析的日志文件

点击(此处)折叠或打开

  1. exec sys.dbms_logmnr.add_logfile(logfilename => '/u01/app/oracle/arch/1_251_892951721.dbf',options => dbms_logmnr.addfile);
--对日志文件进行分析,使用本地的在线数据字典分析归档日志;如果本地的数据字典与归档日志的数据字典并不一致(不是同一个数据库或跟产生归档日志的数据库没有关系),则要用到 DBMS_LOGMNR_D包

点击(此处)折叠或打开

  1. exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);

--查询分析结果

点击(此处)折叠或打开

  1. select timestamp, session_info ,sql_redo from v$logmnr_contents where rownum<=20


--也可以在plsql-developer 工具中执行,效果是一样

点击(此处)折叠或打开

  1. begin
  2. sys.dbms_logmnr.add_logfile(logfilename => '/u01/app/oracle/arch/1_250_892951721.dbf',options => dbms_logmnr.new);
  3. sys.dbms_logmnr.add_logfile(logfilename => '/u01/app/oracle/arch/1_251_892951721.dbf',options => dbms_logmnr.addfile);
  4. sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);
  5. end;

点击(此处)折叠或打开

  1. select timestamp, session_info ,sql_redo from v$logmnr_contents where rownum<=20


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29701030/viewspace-2127041/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29701030/viewspace-2127041/

你可能感兴趣的:(LogMiner 分析归档日志或 REDO日志)