Oracle LogMiner是Oracle公司从产品8i以后提供的一个实际非常有用的分析工具,使用该工具可以轻松获得Oracle重做日志文件(归档日志文件)中的具体内容。LogMiner分析工具实际上是由一组PL/SQL包和一些动态视图(Oracle8i内置包的一部分)组成。

1、安装LogMiner
新建包(这两个脚本必须均以SYS管理员身份运行):
SQL> @E:oracleproduct10.2.0db_1RDBMSADMINdbmslm.sql;
SQL> @E:oracleproduct10.2.0db_1RDBMSADMINdbmslmd.sql;

2、 创建LogMiner所需的数据字典文件
该字典文件是可选的,但是如果没有它,LogMiner解释出来的语句中关于数据字典中的部分(如表名、列名等)和数值都将是16进制的形式,我们是无法直接理解的。
(1)、添加数据字典目录:
SQL> connect system/oracle as sysdba;
SQL> show parameter utl_file;
SQL> alter system set utl_file_dir='/u01/oracle/ora_log' scope=spfile;
SQL> shutdown immediate
SQL> startup
(2)、创建数据字典文件
SQL> EXECUTE dbms_logmnr_d.build(dictionary_filename => 'redolog.log',dictionary_location => '/u01/oracle/ora_log')
创建数据字典的目:让LogMiner引用涉及到内部数据字典中的部分时为他们实际的名字,而不是系统内部的16进制。

3、添加日志文件
但这里建议最好是每次只添加一个需要分析的日志文件,在对该文件分析完毕后,再添加另外的文件。
EXECUTE dbms_logmnr.add_logfile(LogFileName=>'/u01/oracle/oradata/test/redo01.log',Options=>dbms_logmnr.new);
EXECUTE dbms_logmnr.add_logfile(LogFileName=>'/u01/oracle/oradata/test/redo01.log',Options=>dbms_logmnr.addfile);
EXECUTE dbms_logmnr.add_logfile(LogFileName=>'/u01/oracle/oradata/testredo03.log',Options=>dbms_logmnr.addfile);
EXECUTE dbms_logmnr.add_logfile(LogFileName=>'/u01/oracle/oradata/test/redo01.log',Options=>dbms_logmnr.removefile);

4、 分析日志
EXECUTE dbms_logmnr.start_logmnr(DictFileName=>'/u01/oracle/ora_log/redolog.log');
--生成分析日志临时表,以便session断开时用其他用户也能查看
create table logmnr_contents as select * from v$logmnr_contents ;
--终止日志分析事务
execute dbms_logmnr.end_logmnr;
不完全分析举例:
--限制起始时间和终止时间参数:(注意时间参数要合理,否则会出ORA-01291错)
execute dbms_logmnr.start_logmnr( DictFileName => 'E:oracleora_logredolog.log',StartTime => to_date('2009-12-1 15:10:00','YYYY-MM-DD HH24:MI:SS'), EndTime => to_date('2010-02-8 15:16:59','YYYY-MM-DD HH24:MI:SS'));
--限制起始SCN和截止SCN
exec dbms_logmnr.start_logmnr(DictFileName => 'E:oracleora_logredolog.log',StartScn => 4140835823,EndScn => 4140836247);

5、查看分析结果
select timestamp, sql_redo
from sys.logmnr_contents
where upper(sql_redo) like '%CREATE%';
select session_info, sql_redo
from sys.logmnr_contents
where upper(operation) = 'UPDATE'
and upper(sql_redo) like '%SERVICE%';

6、v$logmnr_contents主要字段解释
SCN 特定数据变化的系统更改号,可用 select dbms_flashback.get_system_change_number from dual; 获得当前改变号。
TIMESTAMP 数据改变发生的时间
COMMIT_TIMESTAMP 数据改变提交的时间
SEG_OWNER 段的所有者名称
SEG_NAME 数据发生改变的段名称
SEG_TYPE 数据发生改变的段类型
SEG_TYPE_NAME 数据发生改变的段类型名称
TABLE_SPACE 变化段的表空间
ROW_ID 特定数据变化行的ID
SESSION_INFO 数据发生变化时用户进程信息,如login_username=WACOS client_info= OS_username=oracle Machine_name=ITDB 
OS_terminal= OS_process_id=2782 OS_program name=sqlplus@ITDB (TNS V1-V3)
OPERATION 重做记录中记录的操作(如INSERT)
SQL_REDO 可以为重做记录重做指定行变化的SQL语句
SQL_UNDO 可以为重做记录回退或恢复指定行变化的SQL语句

  <转>http://blog.itpub.net/23463019/viewspace-1042565/

转载于:https://www.cnblogs.com/beliefer/p/4911026.html

log_miner操作(日志挖掘)相关推荐

  1. oracle数据库日志挖掘操作步骤

    目录 前言 一.日志挖掘 1.1 手动切换当前redo日志 1.2 确定需要进行日志挖掘的大体时间点

  2. 自动清理归档日志_Oracle重做日志和日志挖掘

    为什么需要redo log 内存中数据修改后,不必立即更新到磁盘---效率 由日志完成数据的保护目的---效率 其他副产品数据恢复(备份集+归档日志)数据同步(DG,streams,goldengat ...

  3. Oracle日志挖掘技术logminer

    Logminer是Oracle推出的一项日志挖掘技术和工具,可用于分析对数据库的DML操作,获取操作的REDO SQL和UNDO SQL.它既可以分析在线日志,也可以分析离线日志,既可以分析自身数据库 ...

  4. Oracle日志挖掘之LogMiner

    Oracle日志挖掘之LogMiner 官方文档地址:http://docs.oracle.com/cd/E11882_01/server.112/e22490/logminer.htm#SUTIL0 ...

  5. 瀚高数据库日志挖掘方法

    目录 环境 文档用途 详细信息 环境 系统平台:Linux x86-64 Red Hat Enterprise Linux 7 版本:4.3.4.7 文档用途 本文主要用于介绍如何通过walminer ...

  6. 如何使用SpringBoot AOP 记录操作日志、异常日志?

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者:咫尺的梦想_w cnblogs.com/wm-dv/ ...

  7. 我们已经不用AOP做操作日志了!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 前言 用户在操作我们系统的过程中,针对一些重要的业务数据进行增删改 ...

  8. 怎样实现企业管理系统的操作日志功能

    怎样实现企业管理系统的操作日志功能 实现思路解析:在做企业管理系统的同一时候,操作日志这一功能是不可缺少的:所谓的操作日志就是记录一个用户从登陆时開始.到退出登陆时结束,记录这一过程中用户的所有操作: ...

  9. 开源 免费 java CMS - FreeCMS-功能说明-操作日志

    2019独角兽企业重金招聘Python工程师标准>>> 下载地址:http://code.google.com/p/freecms/ 操作日志 查看系统所有操作日志. 提示:admi ...

  10. og-bin=mysql-bin_init_connect + binlog 记录 mysql 操作日志

    init_connect + binlog 记录 mysql 操作日志 简介 mysql 的 init_connect 变量是每个客户端连上数据库服务器时执行的一组数据,这组数据可以是一个或者多个sq ...

最新文章

  1. 马维英坐镇,共话AI赋能生命健康与生物医药
  2. 03-Tomcat服务器
  3. 正在更新office_Windows 9月10日累积更新:已修复和损坏的问题
  4. ant+jmeter
  5. vue 导入excel解析_VUE中导入excel文件
  6. Nginx+PHP-FPM优化技巧总结(转发别人的,自己留着收藏个记录用)
  7. python如何爬取图片到指定文件夹论文_基于Python的图片爬虫程序设计
  8. BZOJ【1606】购买干草
  9. [摘]ASP.Net标准控件(Label控件)
  10. win7打开或关闭windows功能 提示“出现错误,并非所有的功能被更改”,管理员权限惹的祸...
  11. linux管理员最大密码长度,【最新】电信光猫超级管理员账户密码获取方法
  12. 微信渐变国旗头像,最全版本来了!!
  13. 越南VinFast冲刺美股:不到2年亏28亿美元 要与蔚小理比高低
  14. python画图配色_python语言,文章绘图配色高级又简单!
  15. python中常用英语口语_常用英语口语100句超实用-
  16. linux下terminal重命名方法
  17. Python数据库篇
  18. 电子商务法律规范与伦理道德(七)
  19. EPB电子驻车制动系统Simulink模型 模型包括:有刷直流电机+执行器模型,电机参数m文件,SSM模块,PBC模块,数据处理模块,与Carsim联防进行过验证
  20. CVPR-Drafting and Revision: Laplacian Pyramid Network for Fast High-Quality Artistic Style Transfer

热门文章

  1. EditText 输入类型 android:inputType=quot;参数类型quot;
  2. Minty Fresh : So You Want To Write An Orchestration?
  3. Always keep in mind
  4. RouterOS双线进行IP分流上网
  5. 谈一谈flex布局使用中碰到的一些问题
  6. address标签,为网页加入地址信息
  7. BZOJ 2668: [cqoi2012]交换棋子
  8. zeroclipboard浏览器复制插件使用记录
  9. Extension延展(十八)
  10. (面试题)删除在另一个字符串中出现的字符