ITPub博客

首页 > 数据库 > Oracle > 使用logminer分析oracle日志文件

使用logminer分析oracle日志文件

原创 Oracle 作者:hijk139 时间:2008-03-23 14:27:17 0 删除 编辑

使用logminer分析oracle日志文件

一,介绍logminer

日志文件中存放着所有进行数据库恢复的数据,记录了针对数据库结构的每一个变化,也就是对数据库操作的所有DML语句。

logminer 工具即可以用来分析在线,也可以用来分析离线日志文件,即可以分析本身自己数据库的重作日志文件,也可以用来分析其他数据库的重作日志文件。

使用logminer分析oracle日志文件

一,介绍logminer

日志文件中存放着所有进行数据库恢复的数据,记录了针对数据库结构的每一个变化,也就是对数据库操作的所有DML语句。

logminer 工具即可以用来分析在线,也可以用来分析离线日志文件,即可以分析本身自己数据库的重作日志文件,也可以用来分析其他数据库的重作日志文件。

[@more@]

二,应用场景

1,查看数据库的操作记录

2,对用户的操作进行回退,特别是在没有备份的情况下

三,相关过程和视图

logmnr包含两个PL/SQL包和几个视图

dbms_logmnr_d包:用于提取字典信息到外部平面文件或者是联机日志中去

dbms_logmnr包,主要包括三个过程

1, add_logfile:主要用来添加、删除用于分析的日志文件

2,start_logmnr:用来开启日志分析

3,end_logmnr:用来关闭日志分析,它将回收logminer所占的内存

执行以上的包必须有sys权限

相关的数据字典:

v$logmnr_dictionary: Logminer可能使用的数据字典信息

v$logmnr_parameters:当前logminer所设的参数信息

v$logmnr_contents:日志分析结果

这些数据字典是和session相关的,只能在当前session看到。如果想保存结果,可以使用create table a as select * from v$logmnr_contents的方式来保存

四,分析过程:

1,执行脚本

运行下面这样两个脚本,

l、 $ORACLE_HOME/rdbms/admin/dbmslm.sql

2 、$ORACLE_HOME/rdbms/admin/dbmslmd.sql

3、 $ORACLE_HOME/rdbms/admin/dbmslms.sql

2,设置参数UTL_FILE_DIR

alter system set UTL_FILE_DIR ='/oracle/logminer' scope=spfile;,然后重新启动机器

3,生成dict文件

execute DBMS_LOGMNR_D.BUILD(dictionary_filename => 'dictionary.ora',dictionary_location

=> '/usr/tmp');

4, 添加log文件

begin dbms_logmnr.add_logfile(options=>dbms_logmnr.new,logfilename=>'/oracle/product/9.2.0/dbs/arch/1_17.arc');end;

5, 查询添加结果

select low_time,high_time,low_scn,next_scn from v$logmnr_logs;

6, 开始生成

begin dbms_logmnr.start_logmnr(dictfilename=>'/oracle/dictionary.ora');end;

/

7,查看log内容

select * from v$v$logmnr_contents;

更详细的步骤可以参照http://oracle.chinaitlab.com/induction/725752.html

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

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-02-13

  • 博文量
    2
  • 访问量
    2740