【ORACLE】DUMP轉儲 redo log , undo段及table段,redoundo

來源:互聯網
上載者:User

【ORACLE】DUMP轉儲 redo log , undo段及table段,redoundo
1.1 使用oradebug

--啟動任務

oradebug setmypid

--設定dump檔案的名稱標示

alter session set tracefile_identifier=undo

--查看dump檔案

SQL> oradebug tracefile_name;

c:\opt\oracle\product\10.2.0\admin\rundb\udump\rundb_ora_6660_pra1.trc

--設定許可權

oradebug unlimit

--查看可以轉儲的列表:

SQL> oradebug dumplist

EVENTS

TRACE_BUFFER_ON

TRACE_BUFFER_OFF

--oradebug dump 命令

(1) oradebug dump buffers 1

   轉儲緩衝區資訊: 1=僅緩衝頭

1.2 使用alter system dump redo日誌

--dump redo日誌

alter system dump logfile 'C:\OPT\ORACLE\PRODUCT\10.2.0\ORADATA\RUNDB\REDO02.LOG';

1.3 使用alter system dump table資料區塊

--查看scott.stu表的位置:

select HEADER_FILE, HEADER_BLOCK,BYTES,BLOCKS,INITIAL_EXTENT,EXTENTS,NEXT_EXTENT from dba_segme

nts where segment_type='TABLE' and owner='SCOTT'  and segment_name='STU';

 

HEADER_FILE HEADER_BLOCK      BYTES     BLOCKS INITIAL_EXTENT    EXTENTS

----------- ------------ ---------- ---------- -------------- ----------

NEXT_EXTENT

-----------

          4          203      65536          8          65536          1

//scott.stu的位置為: datafile 4 block 203,一共佔用8個block,而且是一個exntents連續空間中的。

--dump 表頭資訊(segment header)資訊

alter system dump datafile 4 block 203;

--dump所有表的所有資料區塊(8個)資訊

alter system dump datafile 4 block min 203 block max 210;

1.4 使用alter system dump  undo段資訊及undo記錄資訊1.4.1 dump undo 段header資訊

---查看undo segments_name

SQL> select segment_name from dba_segments where segment_type='TYPE2 UNDO';

 

SEGMENT_NAME

--------------------------------------------------------------------------------

_SYSSMU1$

_SYSSMU2$

_SYSSMU3$

_SYSSMU4$

…..

或者SQL> select segment_id,segment_name,block_id,status from dba_rollback_segs;

SEGMENT_ID SEGMENT_NAME                     BLOCK_ID STATUS

---------- ------------------------------ ---------- ----------------

         0 SYSTEM                                  9 ONLINE

         1 _SYSSMU1$                               9 ONLINE

         2 _SYSSMU2$                              25 ONLINE

……

 

----dump undo頭

SQL> alter system dump undo header '_SYSSMU1$';

1.4.2 根據xid dump undo記錄

       --查詢xid:  undo段號,slot號,wrap值

SQL> select trunc(id1/65536) usn,mod(id1,65536) slot,id2 wrap,lmode  from v$lock where type='TX';

 

       USN       SLOT       WRAP      LMODE

---------- ---------- ---------- ----------

         2         43        313          6

 

--dump unod記錄

ALTER SYSTEM DUMP UNDO BLOCK '_SYSSMU2$' XID 2 43 313

1.5 stu segment表(段)中某個資料區塊的dump資訊

--資料區塊資訊:

buffer tsn: 4 rdba: 0x010000cc (4/204)

 Itl           Xid                  Uba         Flag  Lck        Scn/Fsc

0x01   0x0006.012.0000013b  0x00800127.011a.01  --U-    1  fsc 0x0000.000c44bc

0x02   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000

block_row_dump:

tab 0, row 0, @0x1f85

tl: 19 fb: --H-FL-- lb: 0x1  cc: 4

col  0: [ 2]  c1 06

col  1: [ 3]  c2 15 09

col  2: [ 5]  73 6d 69 74 68

col  3: [ 2]  c1 1a

end_of_block_dump

 

//itl事務清單索引,該值用於行的鎖位元組:lb:顯示被那個事務鎖住。

//xid: undo中的事務ID,

//uba: 事務產生的undo記錄地址

//flag: 事務狀態。--u—上界提交;c------提交清楚;

Lck: 塊中改事務鎖住行數。

 

 

_________________________________________________________________________________

http://blog.csdn.net/clark_xu               徐長亮專欄原創

__________________________________________________________________________________

 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.