LogMiner日志分析工具的使用

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 1.安装logminer:       要安装LogMiner工具,必须首先要运行下面这样两个脚本,      $ORACLE_HOME/rdbms/admin/dbmslm.sql      $ORACLE_HOME/rdbms/admin/dbmslmd.sql.      这两个脚本必须均以SYS用户身份运行。

1.安装logminer:
      要安装LogMiner工具,必须首先要运行下面这样两个脚本,
      $ORACLE_HOME/rdbms/admin/dbmslm.sql
      $ORACLE_HOME/rdbms/admin/dbmslmd.sql.
      这两个脚本必须均以SYS用户身份运行。

*************使用字典文件存储在flat file中*****************************
2.创建数据字典文件
      ALTER SYSTEM SET UTL_FILE_DIR = 'd:\oracle\logmnr' SCOPE=SPFILE;
      重新启动数据库,使新加的参数生效,然后创建数据字典文件:
      EXECUTE dbms_logmnr_d.build(dictionary_filename => 'dirctionary.ora', dictionary_location => 'D:\oracle\logmnr',options => dbms_logmnr_d.store_in_flat_file);

3.创建要分析的日志文件列表
      EXECUTE dbms_logmnr.add_logfile(LogFileName=>'c:\1_3814.dbf', Options=>dbms_logmnr.new);
      EXECUTE dbms_logmnr.add_logfile( LogFileName=>'c:\1_3815.dbf',Options=>dbms_logmnr.addfile);

4.使用LogMiner进行日志分析
      EXECUTE dbms_logmnr.start_logmnr(DictFileName=>'D:\oracle\logmnr\dirctionary.ora');
***********************************************************************

*************使用字典文件存储在redo file中(推荐这种方法,不需要重启数据库)*****************************
2.创建数据字典到redo file
      EXECUTE DBMS_LOGMNR_D.build(options => DBMS_LOGMNR_D.STORE_IN_REDO_LOGS);

3.创建要分析的日志文件列表
      EXECUTE dbms_logmnr.add_logfile(LogFileName=>'c:\1_3814.dbf', Options=>dbms_logmnr.new);
      EXECUTE dbms_logmnr.add_logfile( LogFileName=>'c:\1_3815.dbf',Options=>dbms_logmnr.addfile);

4.使用LogMiner进行日志分析
      EXECUTE DBMS_LOGMNR.start_logmnr(Options => DBMS_LOGMNR_D.STORE_IN_REDO_LOGS);  --将字典文件提取为REDO日志

      使用此方法时需要把包含字典信息的归档日志或在线日志添加到日志文件列表

      SQL>select name from v$archived_log where dictionary_begin='YES';

      SQL>select name from v$archived_log where dictionary_end-'YES';

 

 

或者

      EXECUTE dbms_logmnr.start_logmnr(Options => dbms_logmnr.DICT_FROM_ONLINE_CATALOG);  --使用联机日志 
********************************************************************************************************

5.观察分析结果
      CREATE TABLE temp AS SELECT * FROM v$logmnr_contents;

6.终止日志分析事务,此时PGA内存区域被清除,分析结果也随之不再存在
      EXECUTE dbms_logmnr.end_logmnr();
     
7.其他注意事项

     1. 使用参数COMMITTED_DATA_ONLY只显示已提交的事务:

     SQL>EXECUTE dbms_logmnr.start_logmnr(Options => dbms_logmnr.COMMITTED_DATA_ONLY); 

     2. 忽略REDO错误:

     SQL>EXECUTE dbms_logmnr.start_logmnr(Options => dbms_logmnr.SKIP_CORRUPTION); 

     Options 参数可以用+连接起来结合使用,例如:

     SQL>EXECUTE dbms_logmnr.start_logmnr(Options => dbms_logmnr.DICT_FROM_ONLINE_CATALOG+dbms_logmnr.COMMITTED_DATA_ONLY); 

 

     3. 按时间过滤数据:使用参数STARTTIME和ENDTIME

         SQL>EXECUTE dbms_logmnr.start_logmnr(STARTTIME=>SYSDATE - 1/24,ENDTIME=>SYSDATE);

     4. 按SCN过滤数据:使用参数STARTSCN和ENDSCN

 

 

  我们可以利用LogMiner日志分析工具来分析其他数据库实例产生的重作日志文件,而不仅仅用来分析本身安装LogMiner的数据库实例的redo logs文件。使用LogMiner分析其他数据库实例时,有几点需要注意:

  1. LogMiner必须使用被分析数据库实例产生的字典文件,而不是安装LogMiner的数据库产生的字典文件,另外必须保证安装LogMiner数据库的字符集和被分析数据库的字符集相同。

  2. 被分析数据库平台必须和当前LogMiner所在数据库平台一样,也就是说如果我们要分析的文件是由运行在UNIX平台上的Oracle 8i产生的,那么也必须在一个运行在UNIX平台上的Oracle实例上运行LogMiner,而不能在其他如Microsoft NT上运行LogMiner。当然两者的硬件条件不一定要求完全一样。

  3. LogMiner日志分析工具仅能够分析Oracle 8以后的产品,对于8以前的产品,该工具也无能为力。

8.对于oracle 10g在使用logmnr时必须提前设置SUPPLEMENTAL LOG DATA
  ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE INDEX) COLUMNS;

删除SUPPLEMENTAL LOG DATA功能
 ALTER DATABASE DROP SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE INDEX) COLUMNS;
     

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4月前
|
监控 Ubuntu 安全
如何在 VPS 上安装和使用 Logwatch 日志分析器和报告工具
如何在 VPS 上安装和使用 Logwatch 日志分析器和报告工具
51 1
|
27天前
|
前端开发 数据处理 Android开发
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
45 8
|
1月前
|
监控 安全 网络安全
使用EventLog Analyzer日志分析工具监测 Windows Server 安全威胁
Windows服务器面临多重威胁,包括勒索软件、DoS攻击、内部威胁、恶意软件感染、网络钓鱼、暴力破解、漏洞利用、Web应用攻击及配置错误等。这些威胁严重威胁服务器安全与业务连续性。EventLog Analyzer通过日志管理和威胁分析,有效检测并应对上述威胁,提升服务器安全性,确保服务稳定运行。
|
4月前
|
Prometheus Cloud Native Perl
评测Loki日志工具
评测Loki日志工具
90 0
|
1月前
|
运维 Prometheus 监控
特定用途的日志分析工具
【10月更文挑战第20天】
65 5
|
1月前
|
存储 机器学习/深度学习 传感器
商业日志分析工具
【10月更文挑战第20天】
55 5
|
1月前
|
存储 运维 监控
开源日志分析工具
【10月更文挑战第20天】
90 3
|
6月前
|
机器学习/深度学习 数据可视化
【tensorboard】深度学习的日志信息events.out.tfevents文件可视化工具
【tensorboard】深度学习的日志信息events.out.tfevents文件可视化工具
|
2月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
42 1
|
4月前
|
SQL 监控 关系型数据库
使用 pt-query-digest 工具分析 MySQL 慢日志
【8月更文挑战第5天】使用 pt-query-digest 工具分析 MySQL 慢日志
97 3
使用 pt-query-digest 工具分析 MySQL 慢日志