Oracle LogMiner 是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻松获得Oracle 重作日志文件(归档日志文件)中的具体内容,特别是,该工具可以分析出所有对于数据库操作的DML(insert、update、delete等)语句,另外还可分析得到一些必要的回滚SQL语句。该工具特别适用于调试、审计或者回退某个特定的事务。
LogMiner分析工具实际上是由一组PL/SQL包和一些动态视图(Oracle8i内置包的一部分)组成,它作为Oracle数据库的一部分来发布,是8i产品提供的一个完全免费的工具。但该工具和其他Oracle内建工具相比使用起来显得有些复杂,主要原因是该工具没有提供任何的图形用户界面(GUI)。本文将详细介绍如何安装以及使用该工具。
Logminer(DBMS_LOGMNR和DBMS_LOGMNR_D)package,可以用来分析Oracle的重做日志文件。Logminer是oracle从8i开始提供的工具。
我们可以使用logminer分析其它instance(版本可不一致)的重做日志文件,但是必须遵循以下要求:
1、LogMiner日志分析工具仅能够分析Oracle 8以后的产品
2、LogMiner必须使用被分析数据库实例产生的字典文件,且安装LogMiner数据库的字符集必须和被分析数据库的字符集相同
3、被分析数据库平台必须和当前LogMiner所在数据库平台一样,且block size相同。
一、安装logminer:
要安装LogMiner工具,必须首先要运行下面这样两个脚本,
%ORACLE_HOME%/rdbms/admin/dbmslm.sql
$ORACLE_HOME%/rdbms/admin/dbmslmd.sql.
这两个脚本必须均以SYS用户身份运行。
二、创建数据字典文件
先在init.ora初始化参数文件中,添加参数UTL_FILE_DIR,该参数值为服务器中放置数据字典文件的目录。如:
UTL_FILE_DIR = (C:\Oracle\logs)
重新启动数据库,使新加的参数生效,然后创建数据字典文件:
SQL> EXECUTE dbms_logmnr_d.build(
dictionary_filename => ' logmn_ora927.dat',
dictionary_location => 'C:\Oracle\logs ');
创建数据字典是让LogMiner引用涉及到内部数据字典中的部分时使用对象的名称,而不是系统内部的16进制的ID。如果我们要分析的数据库中的表有变化,影响到库的数据字典也发生变化,就需要重新创建该字典。
三、添加要分析的日志文件
Logminer可以用来分析在线的重做日志文件和归档日志文件,但是我们一般建议使用归档的日志文件。
a.添加新的日志文件:
SQL> EXECUTE dbms_logmnr.add_logfile(
LogFileName=>' C:\database\oracle\oradata\ora817\archive \ ARC01491.001 ', Options=>dbms_logmnr.new);
b.添加另外的日志文件到列表
SQL> EXECUTE dbms_logmnr.add_logfile(
LogFileName=>' C:\database\oracle\oradata\ora817\archive \ ARC01491.002', Options=>dbms_logmnr.addfile);
c. 移去一个日志文件
SQL> EXECUTE dbms_logmnr.add_logfile(
LogFileName=>' C:\database\oracle\oradata\ora817\archive \ ARC01491.002', Options=>dbms_logmnr. REMOVEFILE);
四、 进行日志分析
SQL> EXECUTE dbms_logmnr.start_logmnr(
DictFileName=>'C:\Oracle\logs\ logmn_ora817.dat ');
可以使用相应的限制条件:
时间范围:对dbms_logmnr.start_logmnr使用StartTime和EndTime参数
SCN范围:对dbms_logmnr.start_logmnr使用StartScn和EndScn参数
五、查看结果
主要是查询v$logmnr_contents
通过字段sql_redo可以得到该日志文件中进行过的sql操作,通过sql_undo可以得到撤销的sql语句。
还可以用这样的sql对日志文件中的所有的操作分类统计:
select operation,count(*)from v$logmnr_contents group by operation;
视图v$logmnr_contents中的分析结果仅在我们运行过程'dbms_logmrn.start_logmnr'这个会话的生命期中存在。这是因为所有的LogMiner存储都在PGA内存中,所有其他的会话是看不到它的,同时随着会话的结束而清除分析结果。
最后,使用过程DBMS_LOGMNR.END_LOGMNR终止日志分析事务,PGA内存区域将被清除
分享到:
相关推荐
Oracle 数据库LogMiner插件是Oracle数据库管理系统中一个强大的日志分析工具,它允许用户对redo logs(重做日志)进行详细分析,从而获取数据库的事务历史、SQL语句执行情况等重要信息。在数据库监控、故障排查、...
Oracle 日志分析工具 LogMiner 是 Oracle 数据库中的一种功能强大且灵活的日志分析工具,它可以帮助数据库管理员、开发人员和用户快速地对数据库进行日志分析和问题诊断。下面是对 LogMiner 的详细介绍和使用方法。 ...
### Oracle 9i LogMiner工具使用说明 #### 一、LogMiner工具概述与用途 Oracle 9i LogMiner工具是一种强大的数据库审计和数据分析工具,主要用于追踪和分析数据库的变更活动。通过分析重做日志文件(Redo Log ...
基于LogMiner的Oracle数据库日志分析 一、概述 Oracle 数据库是世界上使用最广泛的关系数据库系统之一。Oracle 数据库除了具有强大数据组织、存储、查询及处理的基本功能外,还提供了许多与应用及管理有关的辅助...
本文介绍了使用 Oracle LogMiner 进行日志分析的方法,并强调了数据库版本、DB NAME 和生成的数据字典的 DBID 一致性问题的重要性。同时,本文也提供了使用 nid 工具修改 DB NAME 和 DBID 的方法,以便与日志来源库...
Oracle的日志分析工具LogMiner是Oracle数据库内置的一个强大功能,用于分析数据库的redo logs,以获取关于数据库操作的历史信息。LogMiner可以帮助DBA进行性能优化、故障排查和审计等任务。以下将详细介绍LogMiner的...
Oracle LogMiner是Oracle数据库提供的一个强大工具,用于分析重做日志文件,提取数据库中的更改记录(即SCN序列)。通过LogMiner,我们可以追踪并监控数据库表上的变更情况,这对于故障诊断、审计、数据恢复等方面...
Oracle LogMiner是Oracle数据库提供的一个工具,用于解析和提取重做日志文件中的SQL语句和数据更改记录。重做日志文件包含了对数据库所做的所有更改信息,包括插入、更新和删除操作。通过LogMiner,用户可以追踪...
#### 三、LogMiner工具介绍及使用 LogMiner是Oracle提供的一款强大的工具,用于读取和解析重做日志文件中的数据变化,从而帮助用户了解数据库中数据的变化情况。 **LogMiner的主要功能包括:** 1. **监控数据更改...
24.理解和使用Oracle 8i分析工具-LogMiner 25.哪些初始化参数最影响Oracle系统性能 26.你的SQL语句在什么情况下使用全表扫描? 27.如何对CLOB行字段执行全文检索 28.如何让你的SQL运行得更快 29.如何使...
Oracle LogMiner是Oracle数据库内置的一个实用工具,用于分析重做日志文件(redo logs),帮助DBA(数据库管理员)和开发人员理解数据库中的事务历史、数据更改以及系统活动。这个工具无需创建归档模式,就能对在线...
在IT行业,特别是数据库管理领域中,Oracle数据库扮演着重要的角色。它作为一个复杂的关系型数据库管理系统,提供了强大的数据...理解LogMiner的使用方法和步骤对于Oracle数据库管理员来说是专业能力的重要组成部分。
Oracle日志分析工具LogMiner是Oracle公司提供的一个日志分析工具,旨在帮助数据库管理员快速地分析和解决数据库问题。LogMiner可以读取数据库日志文件,重建数据库操作记录,并提供详细的数据库活动报告。 ...
总的来说,Oracle Logminer 是一个强大的分析工具,能够深入挖掘数据库的日志信息,帮助管理员进行故障排查、数据恢复和审计工作。在进行日志分析时,正确配置和理解其限制是成功利用Logminer的关键。
LogMiner工具是Oracle数据库提供的一种强大的日志分析工具,主要功能是解析数据库的重做日志文件(redo log files),从中获取关于数据库活动的详细信息。这些信息包括但不限于DML(数据操纵语言)操作,如INSERT、...
Oracle Logminer 是一个强大的工具,用于挖掘 Oracle 数据库 Redo 日志中的数据更改信息。通过 Logminer,用户可以追踪数据库表的变化情况,这对于数据分析、审计、故障诊断等场景非常有用。 #### 二、Oracle ...
Oracle 10G LogMiner 是Oracle数据库系统中一个强大的日志分析工具,它允许用户在不使用归档重做日志的情况下分析数据库的redo log files,获取对数据库更改历史的详细视图。LogMiner 提供了一种有效的方式来进行...