zoukankan      html  css  js  c++  java
  • [置顶] How to dump redo log entry?

    1.转储针对特定数据块(4号文件的第10-20号数据块)修改的 redo entry
    select file#,name,blocks from v$datafile;
         FILE# NAME                                                   BLOCKS
    ---------- -------------------------------------------------- ----------
             1 +DATA/test/datafile/system.269.829746597                89600
             2 +DATA/test/datafile/sysaux.270.829746621                76800
             3 +DATA/test/datafile/undotbs1.271.829746639              25600
             4 +DATA/test/datafile/users.273.829746667                   640

    -转储 test 表第4行所在的数据块的修改记录         
    SQL> select t.rowid,t.* from scott.test t;

    ROWID                  DEPTNO DNAME          LOC
    ------------------ ---------- -------------- -------------
    AAAPtpAAEAAAADbAAA         10 ACCOUNTING     NEW YORK
    AAAPtpAAEAAAADbAAB         20 RESEARCH       DALLAS
    AAAPtpAAEAAAADbAAC         30 SALES          CHICAGO
    AAAPtpAAEAAAADbAAD         40 OPERATIONS     BOSTON  


    SQL> select DBMS_ROWID.ROWID_OBJECT(rowid) as object#,
      2         DBMS_ROWID.ROWID_RELATIVE_FNO(rowid) as file#,
      3         dbms_rowid.rowid_block_number(rowid) as block#,
      4         DBMS_ROWID.ROWID_ROW_NUMBER(rowid) as row#
      5         from scott.test;

       OBJECT#      FILE#     BLOCK#       ROW#
    ---------- ---------- ---------- ----------
         64361          4        219          0
         64361          4        219          1
         64361          4        219          2
         64361          4        219          3

    --当前属于 current 状态的 online redo log
    SQL> select * from v$log;

        GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME
    ---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- --------- ------------ ---------
             1          1          1   10485760        512          2 YES INACTIVE                430256 25-OCT-13       450682 28-OCT-13
             2          1          2   10485760        512          2 YES INACTIVE                450682 28-OCT-13       453557 28-OCT-13
             3          1          3   10485760        512          2 NO  CURRENT                 453557 28-OCT-13   2.8147E+14
             
    --修改 scott.test 表中 deptno 为 40 的记录进行测试
    SQL> select * from scott.dept;

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


    SQL> update scott.test set LOC='BEIJING' where deptno=40;

    1 row updated.

    SQL> commit;

    Commit complete.


    SQL> select * from scott.test;

        DEPTNO DNAME          LOC
    ---------- -------------- -------------
            10 ACCOUNTING     NEW YORK
            20 RESEARCH       DALLAS
            30 SALES          CHICAGO
            40 OPERATIONS     BEIJING
            
    --转储 redo entry,确保 redo log 没有切换

    SQL> select * from v$log;

        GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME
    ---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- --------- ------------ ---------
             1          1          1   10485760        512          2 YES INACTIVE                430256 25-OCT-13       450682 28-OCT-13
             2          1          2   10485760        512          2 YES INACTIVE                450682 28-OCT-13       453557 28-OCT-13
             3          1          3   10485760        512          2 NO  CURRENT                 453557 28-OCT-13   2.8147E+14

    SQL> select * from v$logfile;

        GROUP# STATUS  TYPE    MEMBER                                             IS_
    ---------- ------- ------- -------------------------------------------------- ---
             1         ONLINE  +DATA/test/onlinelog/group_1.266.829746583         NO
             1         ONLINE  +FRA/test/onlinelog/group_1.261.829746585          YES
             2         ONLINE  +DATA/test/onlinelog/group_2.267.829746587         NO
             2         ONLINE  +FRA/test/onlinelog/group_2.262.829746589          YES
             3         ONLINE  +DATA/test/onlinelog/group_3.268.829746591         NO
             3         ONLINE  +FRA/test/onlinelog/group_3.263.829746593          YES

    6 rows selected.

    SQL> alter system dump logfile '+FRA/test/onlinelog/group_3.263.829746593' dba min 4 219 dba max 4 219;

    System altered.

    --获取转储文件的路径
     col value for a60
     SQL>
    SQL>  select * from  v$diag_info;

       INST_ID NAME                                               VALUE
    ---------- -------------------------------------------------- ------------------------------------------------------------
             1 Diag Enabled                                       TRUE
             1 ADR Base                                           /u01/app/oracle
             1 ADR Home                                           /u01/app/oracle/diag/rdbms/test/test
             1 Diag Trace                                         /u01/app/oracle/diag/rdbms/test/test/trace
             1 Diag Alert                                         /u01/app/oracle/diag/rdbms/test/test/alert
             1 Diag Incident                                      /u01/app/oracle/diag/rdbms/test/test/incident
             1 Diag Cdump                                         /u01/app/oracle/diag/rdbms/test/test/cdump
             1 Health Monitor                                     /u01/app/oracle/diag/rdbms/test/test/hm
             1 Default Trace File                                 /u01/app/oracle/diag/rdbms/test/test/trace/test_ora_4160.trc
             1 Active Problem Count                               1
             1 Active Incident Count                              4
             

    转储指定 SCN 的 redo entry
    SQL> select dbms_flashback.get_system_change_number from dual;

    GET_SYSTEM_CHANGE_NUMBER
    ------------------------
                      455005

    SQL> update scott.test set LOC='BOSTON' where deptno=40;

    1 row updated.

    SQL> commit;

    Commit complete.

    SQL> select * from scott.test;

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

    SQL> select dbms_flashback.get_system_change_number from dual;

    GET_SYSTEM_CHANGE_NUMBER
    ------------------------
                      455020
                      
    alter system dump logfile '+FRA/test/onlinelog/group_3.263.829746593' scn min 455005 scn max 455020;



    SQL>  select * from v$diag_info where NAME ='Default Trace File';

       INST_ID NAME                                               VALUE
    ---------- -------------------------------------------------- ------------------------------------------------------------
             1 Default Trace File                                 /u01/app/oracle/diag/rdbms/test/test/trace/test_ora_4160.trc
             
    转储指定 RBA 的 redo entry


    SQL> select group#,sequence#,BYTES/BLOCKSIZE as block# from v$log;

        GROUP#  SEQUENCE#     BLOCK#
    ---------- ---------- ----------
             1          1      20480
             2          2      20480
             3          3      20480
         

    alter system dump logfile '+FRA/test/onlinelog/group_3.263.829746593' rba min 3 1 rba max 3 10;




    转载请注明作者出处及原文链接,否则将追究法律责任:

    作者:xiangsir

    原文链接:http://blog.csdn.net/xiangsir/article/details/13503089

    QQ:444367417

    MSN:xiangsir@hotmail.com

  • 相关阅读:
    【Java学习】maven生命周期
    【Java学习】Project Structure详解
    html表格宽度设置失效
    1002. A+B for Polynomials (25)
    1001. A+B Format (20)
    自测-3 数组元素循环右移问题
    自测-5 Shuffling Machine
    自测-4 Have Fun with Numbers
    关联规则算法
    自测-2 素数对猜想
  • 原文地址:https://www.cnblogs.com/pangblog/p/3395194.html
Copyright © 2011-2022 走看看