Chinaunix首页 | 论坛 | 博客
  • 博客访问: 584949
  • 博文数量: 772
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 4980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 13:02
文章分类

全部博文(772)

文章存档

2011年(1)

2008年(771)

我的朋友

分类:

2008-10-17 13:24:09

        Logminer(DBMS_LOGMNR和DBMS_LOGMNR_D)package,可以用来分析的重做日志文件。Logminer是oracle从8i开始提供的工具。

        我们可以使用logminer分析其它instance(版本可不一致)的重做日志文件,但是必须遵循以下要求:

        1.LogMiner日志分析工具仅能够分析 8以后的产品

        2.LogMiner必须使用被分析数据库实例产生的字典文件,且安装LogMiner数据库的字符集必须和被分析数据库的字符集相同

        3.被分析数据库平台必须和当前LogMiner所在数据库平台一样,且block size相同。

        使用logminer

        1.安装logminer:

        要安装LogMiner工具,必须首先要运行下面这样两个脚本,

         $ORACLE_HOME/rdbms/admin/dbmslm.sql
        $ORACLE_HOME/rdbms/admin/dbmslmd.sql.

        这两个脚本必须均以SYS用户身份运行。

        2.创建数据字典文件

        首先在init.ora初始化参数文件中,添加参数UTL_FILE_DIR,该参数值为中放置数据字典文件的目录。如:

         UTL_FILE_DIR = (D:\Oracle\logs)

        重新启动数据库,使新加的参数生效,然后创建数据字典文件:

         SQL> EXECUTE dbms_logmnr_d.build(
        dictionary_filename => ' logmn_ora817.dat',
        dictionary_location => ' D:\Oracle\logs ');

        创建数据字典是让LogMiner引用涉及到内部数据字典中的部分时使用对象的名称,而不是系统内部的16进制的ID。如果我们要分析的数据库中的表有变化,影响到库的数据字典也发生变化,就需要重新创建该字典。

        3.添加要分析的日志文件

        Logminer可以用来分析在线的重做日志文件和归档日志文件,但是我们一般建议使用归档的日志文件。

        a.添加新的日志文件:

         SQL> EXECUTE dbms_logmnr.add_logfile(
        LogFileName=>' D:\database\oracle\oradata\ora817\archive \ ARC01491.001 ', Options=>dbms_logmnr.new);

        b.添加另外的日志文件到列表

         SQL> EXECUTE dbms_logmnr.add_logfile(
        LogFileName=>' D:\database\oracle\oradata\ora817\archive \ ARC01491.002', Options=>dbms_logmnr.addfile);

        c. 移去一个日志文件

         SQL> EXECUTE dbms_logmnr.add_logfile(
        LogFileName=>' D:\database\oracle\oradata\ora817\archive \ ARC01491.002', Options=>dbms_logmnr. REMOVEFILE);

        创建了要分析的日志文件,就可以对其进行分析。

        4. 进行日志分析

         SQL> EXECUTE dbms_logmnr.start_logmnr(
        DictFileName=>' D:\Oracle\logs\ logmn_ora817.dat ');

        可以使用相应的限制条件:

        时间范围:对dbms_logmnr.start_logmnr使用StartTime和EndTime参数

        SCN范围:对dbms_logmnr.start_logmnr使用StartScn和EndScn参数

        5.观察结果:

        主要是查询v$logmnr_contents:

         SQL> desc v$logmnr_contents;

[1]  

【责编:michael】

--------------------next---------------------

阅读(245) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~