论坛 
IT客
设为首页
加入收藏
关于我们
首页  | 程序 | IT新闻 | IT基础 | 网络 | 系统 | 数据库 | 软件开发 | 软件下载 | 电影频道 | FLASH | 图片 | 技术文档 | 分类信息
网络 Cisco 网络设备 解决方案 系统 Windows Linux 服务器 系统安全 程序 Java Dotnet 数据库 Oracle MySQL MSSQL 软件开发 Web开发 桌面开发 IT基础 网页设计 平面设计 多媒体 工具软件 即时通讯 Flash FLASH爆笑 FLASH游戏 FLASH MTV FLASH彩铃 图片 明星 美女 笑话大全
子栏目  | 入门基础 | 安装配置 | 体系架构 | PLSQL | 备份恢复 | 性能调优 | 开发技术 | 考试认证
首页 > 数据库 > Oracle > 入门基础 >
 
logminer使用方法 -入门基础
作者: 发布时间:2008-04-14 04:37:42 来源:

  前一段时间我想查询数据库中一个表的纪录的最后修改时间,大家给我提出了很多方法,其中logminer我觉得是比较好的一种,就找了些帮助文档,并进行了研究测试,下面公布一下使用过程,以及期间碰到的问题和解决方法,跟大家共享。其中oracle home的路径大家自己根据我的路径进行修改。
  1:介绍:dbms_logmnr是oracle在oracle8i所提供的新package。它主要用于分析log file文件(包括online redo log file,archived log file),将log file中的信息转存到v$logmnr_contents中,从而获取对oracle数据库操作的历史信息。它不仅可以分析oracle8i的log file,也可以分析oracle8的log file。信息主要包括在你分析的时间限制内数据库数据作了些什么变更,执行了哪些语句。
  2:使用方法
  1)打开init.ora文件,加入utl_file_dir=d:/oracle(注:改为自己的路径,是logminer使用文件的默认路径),然后应用新的设置打开oracle数据库。
  2)执行SQL>。 execute dbms_logmnr_d.build('shwdict.ora','D:/oracle'); ,(注:将生成d:/oracle/shwdict.ora文件,此文件可以以后重复使用,但不能同时用于几个logmnr)用于生成数据字典;如果没有dbms_logmnr_d包,需手工执行@d:/oracle/ora8/rdbms/admin/dbmslmd.sql;如果执行过程中报下标越界错误,则需要打开@d:/oracle/ora8/rdbms/admin/dbmslmd.sql文件,将其中的TYPE col_desc_array IS VARRAY(513) OF col_description的513加大,我是改成了1513,保存文件重新执行@d:/oracle/ora8/rdbms/admin/dbmslmd.sql;(注:都要以sysdba身份登陆执行)。
  3)将要分析的日志文件加入要分析的log list中,察看有哪些日志文件可以用select * from v$logfile;查询已经加入那些可以用select * from v$logmnr_logs(注:查询必须在同一个会话中查询,单独开查询将查不到)语句如下:execute dbms_logmnr.add_logfile('d:/oracle/oradata/shw/redo01_1.log',dbms_logmnr.new);
  execute dbms_logmnr.add_logfile('d:/ORACLE/ORADATA/ORA/REDO02_1.LOG',dbms_logmnr.addfile);
  execute dbms_logmnr.add_logfile('d:/ORACLE/ORADATA/ORA/REDO03_1.LOG',dbms_logmnr.addfile);
  如果需要从分析列表里去掉一个文件用
  ('d:/ORACLE/ORADATA/ORA/REDO03_1.LOG',dbms_logmnr.removefile);
  4)更改会话时间表达方式(注一定要在本会话下修改,我开始发生错误就是因为在别的会话里修改的,如果允许,可以将数据库默认的时间表达方式修改掉)会话内修改为alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss'; 系统设置在注册表。
  5)查询分析的日志文件包含的scn范围和日期范围。
  select low_time,high_time,low_scn,next_scn from v$logmnr_logs;会列出你加入的日志文件的以上信息。
  6)执行分析:
  dbms_logmnr.start_logmnr(
  dictfilename => 'd:/oracle/shwdict.ora',startscn=>xxxxxx,endscn=>xxxxx,starttime => to_date('20030501 12:15:00','yyyymmdd hh24:mi:ss'), endtime => to_date('20030501 15:40:30','yyyymmdd hh24:mi:ss'));
  要注意scn范围和日期格式,格式要与你修改的一样。
  7:查询
  Select SCN,timestamp, session# session_num, sql_redo
  From V$LOGMNR_CONTENTS
  Order by 1
  具体要查询什么内容可以自己修改。
  
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关信息
 ·Oracle LogMiner终结版-入门基础  (2008-04-14)

发表评论
用户名: 密码:
验证码: 匿名发表
 
 搜索文章
 最新文章
·Win2K入侵检测实例分析
·Win2000 Server安全入门
·使用微软安全工具包加固Win2
·Windows2000安全检查清单
· 安全管理
·利用安全工具包保持系统的最
·怎么实施和做好入侵检测
·Win2k建立安全WEB站点的解决
·用“$”来加强共享资源的安全
·让你的IIS无懈可击
 热点文章 
· 我的xfce学习笔记(汉化)
·三个方法优化MySQL数据库查询
·IPW2100安装详细步骤说明
·Gnuplot科学绘图——入门篇
·Linux下使用Evolution收发Em
·在Archlinux 安装Maya7.01
·安装Linux中文输入法fcitx
·向Linux迁移的人才准备
·使用指南:好用的播放器mpd
·你应该知道的10个MySQL客户启

社区关于我们广告业务信息反馈合作伙伴网站地图
ITKee.Com 版权所有
Copyright © 2008 All rights reserved