wxsheng 发表于 2018-9-25 08:18:05

oracle工具之--LogMiner使用

  LogMiner是oracle的日志分析工具,可以分析出所有对数据的操作,可以用来在线分析日志,可以分析离线的日志文件。
  因为LogMiner分析需要用到数据字典,有三种方式来参照数据字典
  LogMiner分为三种使用方式:
  1.使用Online Catalog当前数据库的数据字典分析本数据的日志
  添加日志:
  在V$ARCHIVED_LOG视图中找到想到分析的日志名称
  添加新日志:
  EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME => '/usr/oracle/data/db1arch_1_16_482701534.dbf',OPTIONS => DBMS_LOGMNR.NEW);
  继续添加日志:
  EXECUTE DBMS_LOGMNR.ADD_LOGFILE( LOGFILENAME => '/usr/oracle/data/db1arch_1_16_482701535.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE);
  删除已经添加的日志:
  EXECUTE DBMS_LOGMNR.REMOVE_LOGFILE(LOGFILENAME => '/usr/oracle/data/db1arch_1_16_482701535.dbf');
  查看V$LOGMNR_LOGS视图可以知道已经添加的日志。
  开始LogMiner用在线数据字典:
  EXECUTE DBMS_LOGMNR.START_LOGMNR( OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG);
  查询V$LOGMNR_CONTENTS视图来分析日志
  结束LogMiner
  EXECUTE DBMS_LOGMNR.END_LOGMNR();
  2.将数据字典保存的归档日志中。
  导出数据字典到归档日志中:
  EXECUTE DBMS_LOGMNR_D.BUILD(OPTIONS=> DBMS_LOGMNR_D.STORE_IN_REDO_LOGS);
  开始LogMiner用归档日志的数据字典:
  EXECUTE DBMS_LOGMNR.START_LOGMNR( OPTIONS => DBMS_LOGMNR.DICT_FROM_REDO_LOGS);
  添加日志:
  EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME => '/usr/oracle/data/db1arch_1_16_482701534.dbf',OPTIONS => DBMS_LOGMNR.NEW);
  查询V$LOGMNR_CONTENTS视图来分析日志
  结束LogMiner
  EXECUTE DBMS_LOGMNR.END_LOGMNR();
  3.将数据字典保存的平面文件中:
  修改初始化参数,指定平面文件的位置:
  alter system set UTL_FILE_DIR='D:\oracle\logminer' scope=spfile;
  重启数据库,使参数生效,导出数据字典到平面文件中
  execute dbms_logmnr_d.build(dictionary_filename =>'dictionary.ora',dictionary_location =>'D:\oracle\logminer');
  添加日志文件
  EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME => '/usr/oracle/data/db1arch_1_16_482701534.dbf',OPTIONS => DBMS_LOGMNR.NEW);
  开始LogMiner用平面文件的数据字典:
  execute dbms_logmnr.start_logmnr(dictfilename=>'d:\oracle\logminer\dictionary.ora');
  查询V$LOGMNR_CONTENTS视图来分析日志
  结束LogMiner
  EXECUTE DBMS_LOGMNR.END_LOGMNR();

页: [1]
查看完整版本: oracle工具之--LogMiner使用