Oracle分析工具-Logminer
关键字:
Oracle,分析工具,增量解析
1. 概述
Logminer是自Oracle8i以后推出的分析工具,它可以读取 Oracle 数据库的归档日志和在线日志,并将其转换为易于分析的格式。logminer分析工具由一组PL/SQL包和一些动态视图组成。
2. Logminer的用途
日志文件中存放着所有进行数据库恢复的数据,记录了针对数据库结构的每一个变化,也就是对数据库操作的所有DML语句。
使用Logmin可以完成以下操作:
- 跟踪数据库的变化:可以离线的跟踪数据库的变化,而不会影响在线系统的性能。
- 回退数据库的变化:回退特定的变化数据,减少point-in-time recovery的执行。
- 优化和扩容计划:可通过分析日志文件中的数据以分析数据增长模式。
- 进行事后审计:对操作人及动作进行审计。
3. Logminer的使用
常用操作SQL:
- 启用归档模式:使用 ALTER DATABASE 命令启用归档模式,以便生成归档日志。(使用logminer前提,具体详细操作参考安装部署手册Logminer源端安装部署部分)
alter database archivelog;
- 创建 LogMiner 会话:使用 DBMS_LOGMNR.START_LOGMNR 过程创建 LogMiner 会话,指定需要分析的日志起始SCN。
BEGIN SYS.DBMS_LOGMNR.START_LOGMNR(STARTSCN => 54397846 , ENDSCN => 54397847, OPTIONS => SYS.DBMS_LOGMNR.CONTINUOUS_MINE + SYS.DBMS_LOGMNR.NO_ROWID_IN_STMT + SYS.DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG); END;
- 查看数据库变更记录:使用V$LOGMNR_CONTENTS视图查看logminer记录的相关变更记录。
SELECT * FROM V$LOGMNR_CONTENTS;
- 结束 LogMiner 会话:使用 DBMS_LOGMNR.END_LOGMNR 过程结束 LogMiner 会话。
BEGIN SYS.DBMS_LOGMNR.END_LOGMNR(); END;
以下为LOGMNR_CONTENTS视图中的部分字段信息: