Oracle 11g之LogMiner常用场景

2024-05-10 06:18

本文主要是介绍Oracle 11g之LogMiner常用场景,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

LogMiner常用场景


1.1 LogMiner跟踪特定用户所做的更改


本节例子,查出用户joedevo在特定时间范围内对数据库所做的所有操作,步骤如下:

1.创建LogMiner字典

   使用LogMiner分析joedevo相关的数据,必须在joedevo对它的所有表做任何的更改操作前创建LogMiner字典或者直接使用在线字典,本例使用已提取到重做日志文件中的LogMiner字典。

2.添加重做日志文件

在joedevo对数据库做了一些更改操作之后,可以指定对应的重做日志文件来分析:

SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE( -LOGFILENAME => 'log1orc1.ora', -OPTIONS => DBMS_LOGMNR.NEW);

根据需要添加其他的重做日志文件:

SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE( -LOGFILENAME => 'log2orc1.ora', -OPTIONS => DBMS_LOGMNR.ADDFILE);

3.开启LogMiner并限制查询范围

SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR( -DICTFILENAME => 'orcldict.ora', -STARTTIME => TO_DATE('01-Jan-1998 08:30:00','DD-MON-YYYY HH:MI:SS'), - ENDTIME => TO_DATE('01-Jan-1998 08:45:00', 'DD-MON-YYYY HH:MI:SS'));

4.查询V$LOGMNR_CONTENTS

SQL> SELECT SQL_REDO, SQL_UNDO FROM V$LOGMNR_CONTENTSWHERE USERNAME = 'joedevo' AND SEG_NAME = 'salary';

5.停止LogMiner

SQL> EXECUTE DBMS_LOGMNR.END_LOGMNR();


1.2 LogMiner做表的访问统计


   本节案例中,假设你管理者一个直营数据库,想确定1月份2周内客户带来的生产效益,假定你已经创建了LogMiner字典并添加了相关的重做日志文件,接下来的步骤如下:

1.开始LogMiner并限制查询范围

SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR( -STARTTIME => TO_DATE('07-Jan-2003 08:30:00','DD-MON-YYYY HH:MI:SS'), -ENDTIME => TO_DATE('21-Jan-2003 08:45:00','DD-MON-YYYY HH:MI:SS'), -DICTFILENAME => '/usr/local/dict.ora');

2.查询V$LOGMNR_CONTENTS

查询V$LOGMNR_CONTENTS确定指定时间范围内哪些表发生了变化:

SQL> SELECT SEG_OWNER, SEG_NAME, COUNT(*) AS Hits FROMV$LOGMNR_CONTENTS WHERE SEG_NAME NOT LIKE '%$' GROUP BYSEG_OWNER, SEG_NAME ORDER BY Hits DESC;

3.停止LogMiner

SQL> EXECUTE DBMS_LOGMNR.END_LOGMNR();



这篇关于Oracle 11g之LogMiner常用场景的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/975672

相关文章

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

Java 枚举的基本使用方法及实际使用场景

《Java枚举的基本使用方法及实际使用场景》枚举是Java中一种特殊的类,用于定义一组固定的常量,枚举类型提供了更好的类型安全性和可读性,适用于需要定义一组有限且固定的值的场景,本文给大家介绍Jav... 目录一、什么是枚举?二、枚举的基本使用方法定义枚举三、实际使用场景代替常量状态机四、更多用法1.实现接

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

Java集成Onlyoffice的示例代码及场景分析

《Java集成Onlyoffice的示例代码及场景分析》:本文主要介绍Java集成Onlyoffice的示例代码及场景分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 需求场景:实现文档的在线编辑,团队协作总结:两个接口 + 前端页面 + 配置项接口1:一个接口,将o