Oracle LogMiner 安装和使用(9i or later)

来源:互联网 发布:网络作战司令部 特朗普 编辑:程序博客网 时间:2024/06/06 14:29

1. LogMiner安装

需要以SYS用户身份执行下面两个脚本:

$ORACLE_HOME/rdbms/admin/dbmslm.sql

$ORACLE_HOME/rdbms/admin/dbmslmd.sql

2. LogMiner使用

设置一个必要参数UTL_FILE_DIR=<path>,保证oracle用户在该<path>下有读写权限,该参数不支持动态修改,所以只能在pfile中修改,然后重启数据库实例。

创建LogMiner的字典文件,执行下面的脚本。(注意 - 符号不能丢)

EXECUTE DBMS_LOGMNR_D.BUILD('dictionary.ora', - 
 '<path>', -
 OPTIONS => DBMS_LOGMNR_D.STORE_IN_FLAT_FILE);

向LogMiner中添加需要mine的Log文件,执行下面的脚本。

EXECUTE DBMS_LOGMNR.ADD_LOGFILE( -
 LOGFILENAME => '/oradata/redo01.log', -
 OPTIONS => dbms_logmnr.NEW);         <==========第一次创建                   


EXECUTE DBMS_LOGMNR.ADD_LOGFILE( -
 LOGFILENAME => '/oradata/redo02.log', -
 OPTIONS => dbms_logmnr.ADDFILE);     <==========追加


EXECUTE DBMS_LOGMNR.ADD_LOGFILE( -
LOGFILENAME => '/oradata/redo02.log', -
 OPTIONS => dbms_logmnr.REMOVEFILE);  <==========删除


Log文件的挖掘

你可以选择的用来过滤日志信息的选项

选项     意义 
===========     =========

STARTSCN        SCN起始号 
ENDSCN          SCN结束号 
STARTTIME       开始时间 
ENDTIME         结束时间 
DICTFILENAME    字典文件的名字 

用来分析的LogMiner视图

视图名              视图信息 
===================     ==================================================

V$LOGMNR_DICTIONARY     正在使用的字典文件 
V$LOGMNR_PARAMETERS     LogMiner的参数 
V$LOGMNR_LOGS           正在分析的日志文件 
V$LOGMNR_CONTENTS       分析出来的日志内容


使用过滤的例子:

EXECUTE DBMS_LOGMNR.START_LOGMNR( - 
 DICTFILENAME => '<path>/dictionary.ora', -
 STARTSCN => 100, -
 ENDSCN => 150);

查看日志信息的例子:

SELECT operation, sql_redo FROM v$logmnr_contents;


如何给LogMiner产生的表分配独立的表空间

SQL> connect / as sysdba
SQL> EXECUTE DBMS_LOGMNR_D.SET_TABLESPACE ('LOGMNRTS');


原创粉丝点击