ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 第10章:LogMiner之分析重做文件

第10章:LogMiner之分析重做文件

原创 Linux操作系统 作者:mengzhaoliang 时间:2008-05-31 15:59:26 0 删除 编辑

/* 2008/05/30
*环境:Windows XP +Oracle10.2.0.1
*Oracle 备份与恢复培训教程 Kenny Smith,Stephan Haisley著 周琪、韩岷、李渝琳等译
*第二部分:用户管理的备份与恢复
*第10章:LogMiner
*/

练习:分析重做文件
1、创建数据字典文件
安装logMiner,必须首先要运行下面这样两个脚本,

l $ORACLE_HOME/rdbms/admin/dbmslm.sql

2 $ORACLE_HOME/rdbms/admin/dbmslmd.sql.

SQL> @G:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\dbmslm.sql

程序包已创建。


授权成功。

SQL> @G:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\dbmslmd.sql

程序包已创建。

在$oracle_home\database\initrisenet.ora加上*.UTL_FILE_DIR='E:\logminer'
关闭数据库,然后启动

SQL> execute dbms_logmnr_d.build(-
> dictionary_filename=>'dictionary.ora',-
> dictionary_location=>'e:\logminer');

PL/SQL 过程已成功完成。


2、产生数据库操作
SQL> connect scott/mzl
已连接。
SQL> desc dept;
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------

 DEPTNO                                    NOT NULL NUMBER(2)
 DNAME                                              VARCHAR2(14)
 LOC                                                VARCHAR2(13)

SQL> select * from dept;

    DEPTNO DNAME          LOC
---------- -------------- -------------
        50 support        denver
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON

SQL> update dept set loc='beijing' where deptno='40';

已更新 1 行。

SQL> commit;

提交完成。

3、为分析指定日志文件
SQL> select * from bonus;

未选定行

SQL> drop table bonus;

表已删除。

SQL> set time on;
15:30:29 SQL> conn sys/mzl as sysdba
已连接。
15:30:41 SQL> select sequence# from v$log where status='CURRENT';

 SEQUENCE#
----------
         1

15:31:11 SQL> alter system switch logfile;

系统已更改。

15:31:28 SQL> select sequence# from v$log where status='CURRENT';

 SEQUENCE#
----------
         2
4、启动LogMiner
15:34:14 SQL> select db_name,thread_sqn,filename
15:34:52   2  from v$logmnr_logs;

未选定行
15:35:00 SQL> begin
15:36:20   2       dbms_logmnr.add_logfile(
15:36:33   3        logfilename=>'G:\oracle\product\10.2.0\flash_recovery_area\R
ISENET\ARCHIVELOG\2008_01_31\O1_MF_1_1_3T2YBJH4_.ARC',
15:37:18   4        ptions=>dbms_logmnr.NEW);
15:37:37   5  end;
15:37:40   6  /

PL/SQL 过程已成功完成。

 

15:38:35 SQL> set time off;
SQL> select db_name,thread_sqn,filename from v$logmnr_logs;

DB_NAME  THREAD_SQN
-------- ----------
FILENAME
--------------------------------------------------------------------------------

RISENET           1
G:\oracle\product\10.2.0\flash_recovery_area\RISENET\ARCHIVELOG\2008_01_31\O1_MF

_1_1_3T2YBJH4_.ARC

启动LogMiner
SQL> execute dbms_logmnr.start_logmnr(-
> dictfilename=>'e:\logminer\dictionary.ora');

PL/SQL 过程已成功完成。


5、分析日志文件内容
select sql_redo from v$logmnr_contents;

select sql_redo from v$logmnr_contents where tablespace='DEPT';
6、关闭LogMiner
SQL> create table logmnr_contents as select * from v$logmnr_contents;

表已创建。

SQL> execute dbms_logmnr.end_logmnr;

PL/SQL 过程已成功完成。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12778571/viewspace-325135/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2008-01-30

  • 博文量
    336
  • 访问量
    3085699