当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 一、如何分析即LogMiner解释从目前来看,分析Oracle日志的唯一方法就是使用Oracle公司提供的LogMiner来进行, Oracle数据库的所有更改都记录在日志中,但是原始的日志信息我们根本无法看懂,而LogMiner就是让我们看懂日志信息的工具。
 

 

 ·oracle数据库几种启动方式    »显示摘要«
    摘要:1、startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 启动instance,即启动sga和后台进程,这种启动只需要init.ora文件。 2、startup mount dbname 安装启动,这种方式启动下可执行:数据库日志归档、数据库恢复、重新命名一些数据库文件 如:系统表空间或日志文件。 执行“nomount”,然后打开控制文件 3、startup open dbname 先执行“nomount”,然......
 ·oracle数据库网络与安全faq精粹    »显示摘要«
    摘要:[q]如何限定特定ip访问数据库 [a]可以利用登录触发器、cmgw或者是在$oreacle_home/network/admin下新增一个protocol.ora文件(有些os可能是. protocol.ora),9i可以直接修改sqlnet.ora: 增加如下内容: tcp.validnode_checking=yes#允许访问的iptcp.inited_nodes=(ip1,ip2,……)#不允许访问的iptcp.excluded......


分析Oracle数据库日志文件
一、如何分析即logminer解释

【相关文章:通用SQL数据库查询语句精华使用简介

【扩展阅读:ADIC iPlatform 智能磁带库

从目前来看,分析oracle日志的唯一方法就是使用oracle公司提供的logminer来进行, oracle数据库的所有更改都记录在日志中,但是原始的日志信息我们根本无法看懂,而logminer就是让我们看懂日志信息的工具。从这一点上看,它与tkprof差不多,一个是用来分析日志信息,一个则是格式化跟踪文件。通过对日志的分析我们可以实现下面的目的: 【扩展信息:SQL系列教程之基本SELECT命令

1、查明数据库的逻辑更改; 2、侦察并更正用户的误操作; 3、执行事后审计; 4、执行变化分析。 不仅如此,日志中记录的信息还包括:数据库的更改历史、更改类型(insert、update、delete、ddl等)、更改对应的scn号、以及执行这些操作的用户信息等,logminer在分析日志时,将重构等价的sql语句与undo语句(分别记录在v$logmnr_contents视图的 sql_redo与sql_undo中)。这里需要注意的是等价语句,而并非原始sql语句,例如:我们最初执行的是“delete a where c1 <>cyx;”,而logminer重构的是等价的6条delete语句。所以我们应该意识到v$logmnr_contents视图中显示的并非是原版的现实,从数据库角度来讲这是很容易理解的,它记录的是元操作,因为同样是“delete a where c1 <>cyx;”语句,在不同的环境中,实际删除的记录数可能各不相同,因此记录这样的语句实际上并没有什么实际意义,logminer重构的是在实际情况下转化成元操作的多个单条语句。

另外由于oracle重做日志中记录的并非原始的对象(如表以及其中的列)名称,而只是它们在oracle数据库中的内部编号(对于表来说是它们在数据库中的对象id,而对于表中的列来说,对应的则是该列在表中的排列序号:col 1, col 2 等),因此为了使logminer重构出的sql语句易于识别,我们需要将这些编号转化成相应的名称,这就需要用到数据字典(也就说logminer本身是可以不用数据字典的,详见下面的分析过程),logminer利用dbms_logmnr_d.build()过程来提取数据字典信息。

logminer包含两个pl/sql包与几个视图:1、dbms_logmnr_d包,这个包只包括一个用于提取数据字典信息的过程, 即dbms_logmnr_d.build()过程。 2、dbms_logmnr包,它有三个过程: add_logfile(name varchar2, options number) - 用来添加/删除用于分析的日志文件; start_logmnr(start_scn number, end_scn number, start_time number,end_time number, dictfilename varchar2, options number) - 用来开启日志分析,同时确定分析的时间/scn窗口以及确认是否使用提取出来的数据字典信息。 end_logmnr() - 用来终止分析会话,它将回收logminer所占用的内存。
...   下一页
    摘要:ora-00903 invalid table name ora-00903:无效的表名 cause a table or cluster name is invalid or does not exist. this message is also issued if an invalid cluster name or no cluster name is specified in an alter cluster or drop cluster......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE