[20170412]op code列表.txt

lfree發表於2017-04-12

[20170412]op code列表.txt

轉載:http://www.itpub.net/thread-1517926-1-1.html
--看redo轉儲,需要了解OP的含義,做一個記錄:


附op code列表(來自網路):
格式:layer: opcode
       LAYER的含義:
               4 — Block Cleanout
               5 — Transaction Management
             10 — 索引操作
             11 — 行操作
              13 — 段[url=]管理[/url]
              14 — Extent 管理
              17 — 表空間管理
              18 — Block Image (Hot Backups)
              19 — Direct Loader
              20 — Compatibility segment
              22 — 本地管理表空間
              23 — Block Writes
              24 — DDL語句
Layer 1 : Transaction Control - KCOCOTCT    
   Opcode 1 : KTZFMT
   Opcode 2 : KTZRDH
   Opcode 3 : KTZARC
   Opcode 4 : KTZREP
Layer 2 : Transaction Read -  KCOCOTRD    
Layer 3 : Transaction Update -  KCOCOTUP    
Layer 4 : Transaction Block -  KCOCOTBK     [ktbcts.h]
         Opcode 1 : Block Cleanout
         Opcode 2 : Physical Cleanout
         Opcode 3 : Single Array Change
         Opcode 4 : Multiple Changes to an Array
         Opcode 5 : Format Block
Layer 5 : Transaction Undo -  KCOCOTUN     [ktucts.h]
         Opcode 1 : Undo block or undo segment header - KTURDB
         Opcode 2 : Update rollback segment header - KTURDH
         Opcode 3 : Rollout a transaction begin
         Opcode 4 : Commit transaction (transaction table update)
- no undo record
         Opcode 5 : Create rollback segment (format) - no undo record
         Opcode 6 : Rollback record index in an undo block - KTUIRB
         Opcode 7 : Begin transaction (transaction table update)
         Opcode 8 : Mark transaction as dead
         Opcode 9 : Undo routine to rollback the extend of a rollback segment
         Opcode 10 :Redo to perform the rollback of extend of rollback segment
                    to the segment header.
         Opcode 11 :Rollback DBA in transaction table entry - KTUBRB
         Opcode 12 :Change transaction state (in transaction table entry)
         Opcode 13 :Convert rollback segment format (V6 -> V7)
         Opcode 14 :Change extent allocation parameters in a rollback segment
         Opcode 15 :
         Opcode 16 :
         Opcode 17 :
         Opcode 18 :
         Opcode 19 : Transaction start audit log record
         Opcode 20 : Transaction continue audit log record    
         Opcode 24 : Kernel Transaction Undo Relog CHanGe - KTURLGU
Layer 6 : Control File -  KCOCODCF     [tbs.h]
Layer 10 : INDEX -  KCOCODIX     [kdi.h]
         Opcode 1 : load index block (Loader with direct mode)
         Opcode 2 : Insert leaf row
         Opcode 3 : Purge leaf row
         Opcode 4 : Mark leaf row deleted
         Opcode 5 : Restore leaf row (clear leaf delete flags)
         Opcode 6 : Lock index block
         Opcode 7 : Unlock index block
         Opcode 8 : Initialize new leaf block
         Opcode 9 : Apply Itl Redo
         Opcode 10 :Set leaf block next link
         Opcode 11 :Set leaf block previous link
         Opcode 12 :Init root block after split
         Opcode 13 :Make leaf block empty
         Opcode 14 :Restore block before image
         Opcode 15 :Branch block row insert
         Opcode 16 :Branch block row purge
         Opcode 17 :Initialize new branch block
         Opcode 18 :Update keydata in row
         Opcode 19 :Clear row's split flag
         Opcode 20 :Set row's split flag
         Opcode 21 :General undo above the cache (undo)
         Opcode 22 :Undo operation on leaf key above the cache (undo)
         Opcode 23 :Restore block to b-tree
         Opcode 24 :Shrink ITL (transaction entries)
         Opcode 25 :Format root block redo
         Opcode 26 :Undo of format root block (undo)
         Opcode 27 :Redo for undo of format root block
         Opcode 28 :Undo for migrating block
         Opcode 29 :Redo for migrating block
         Opcode 30 :IOT leaf block nonkey update
         Opcode 31 :Cirect load root redo
         Opcode 32 :Combine operation for insert and restore rows
Layer 11 : Row Access -  KCOCODRW     [kdocts.h]
         Opcode 1 : Interpret Undo Record (Undo)
         Opcode 2 : Insert Row Piece
         Opcode 3 : Drop Row Piece
         Opcode 4 : Lock Row Piece
         Opcode 5 : Update Row Piece
         Opcode 6 : Overwrite Row Piece
         Opcode 7 : Manipulate First Column (add or delete the 1rst column)
         Opcode 8 : Change Forwarding address
         Opcode 9 : Change the Cluster Key Index
         Opcode 10 :Set Key Links (change the forward & backward key links
                    on a cluster key)
         Opcode 11 :Quick Multi-Insert (ex: insert as select …)
         Opcode 12 :Quick Multi-Delete
         Opcode 13 :Toggle Block Header flags
Layer 12 : Cluster -  KCOCODCL     [?]
Layer 13 : Transaction Segment -  KCOCOTSG     [ktscts.h]
         Opcode 1 : Data segment format
         Opcode 2 : Merge
         Opcode 3 : Set link in block
         Opcode 4 : Not used
         Opcode 5 : New block (affects segment header)
         Opcode 6 : Format block (affects data block)
         Opcode 7 : Record link
         Opcode 8 : Undo free list (undo)
         Opcode 9 : Redo free list head (called as part of undo)
         Opcode 9 : Format free list block (freelist group)
         Opcode 11 :Format new blocks in free list
         Opcode 12 :free list clear
         Opcode 13 :free list restore (back) (undo of opcode 12)
Layer 14 : Transaction Extent -  KCOCOTEX     [kte.h]
         Opcode 1 : Add extent to segment
         Opcode 2 : Unlock Segment Header
         Opcode 3 : Extent DEaLlocation (DEL)
         Opcode 4 : Undo to Add extent operation (see opcode 1)
         Opcode 5 : Extent Incarnation number increment
         Opcode 6 : Lock segment Header
         Opcode 7 : Undo to rollback extent deallocation (see opcode 3)
         Opcode 8 : Apply Position Update (truncate)
         Opcode 9 : Link blocks to Freelist
         Opcode 10 :Unlink blocks from Freelist
         Opcode 11 :Undo to Apply Position Update (see opcode 8)
         Opcode 12 :Convert segment header to 6.2.x type
Layer 15 : Table Space -  KCOCOTTS     [ktt.h]
        Opcode 1 : Format deferred rollback segment header
        Opcode 2 : Add deferred rollback record
        Opcode 3 : Move to next block
        Opcode 4 : Point to next deferred rollback record
Layer 16 : Row Cache -  KCOCOQRC    
Layer 17 : Recovery (REDO) -  KCOCORCV     [kcv.h]
         Opcode 1 : End Hot Backup : This operation clears the hot backup
                    in-progress flags in the indicated list of files
         Opcode 2 : Enable Thread : This operation creates a redo record
                    signalling that a thread has been enabled
         Opcode 3 : Crash Recovery Marker
         Opcode 4 : Resizeable datafiles
         Opcode 5 : Tablespace ONline
         Opcode 6 : Tablespace OFFline
         Opcode 7 : Tablespace ReaD Write
         Opcode 8 : Tablespace ReaD Only
         Opcode 9 : ADDing datafiles to database
         Opcode 10 : Tablespace DRoP
         Opcode 11 : Tablespace PitR    
Layer 18 : Hot Backup Log Blocks -  KCOCOHLB     [kcb.h]
         Opcode 1 : Log block image
         Opcode 2 : Recovery testing
Layer 19 : Direct Loader Log Blocks - KCOCODLB     [kcbl.h]
         Opcode 1 : Direct block logging
         Opcode 2 : Invalidate range
         Opcode 3 : Direct block relogging
         Opcode 4 : Invalidate range relogging    
Layer 20 : Compatibility Segment operations - KCOCOKCK  [kck.h]
         Opcode 1 : Format compatibility segment -  KCKFCS
         Opcode 2 : Update compatibility segment - KCKUCS
Layer 21 : LOB segment operations - KCOCOLFS     [kdl2.h]
         Opcode 1 : Write data into ILOB data block - KDLOPWRI
Layer 22 : Tablespace bitmapped file operations -  KCOCOTBF [ktfb.h]
Opcode 1 : format space header - KTFBHFO
Opcode 2 : space header generic redo - KTFBHREDO
Opcode 3 : space header undo - KTFBHUNDO
Opcode 4 : space bitmap block format - KTFBBFO
Opcode 5 : bitmap block generic redo - KTFBBREDO
Layer 23 : write behind logging of blocks - KCOCOLWR [kcbb.h]
Opcode 1 : Dummy block written callback - KCBBLWR
Layer 24 : Logminer related (DDL or OBJV# redo) - KCOCOKRV [krv.h]
Opcode : common portion of the ddl - KRVDDL
Opcode : direct load redo - KRVDLR
Opcode : lob related info - KRVLOB
Opcode : misc info - KRVMISC
Opcode : user info - KRVUSER
        
備註:該操作不包含undo vector, segment header的修改即使交易回滾,它也不會發生回滾。

轉載:http://blog.itpub.net/19602/viewspace-1060164/

網上看到的,隨手記錄一下。

OP:操作碼,由兩部分組成,layer code. sub code,網上有關op的解釋不多,但是op在redo change vector裡非常重要。
[@more@]

常見的OP CODE含義:

4塊清除

4.1塊清除
5事務管理,如commit/rollback

5.1修改undo header中的事務資訊
5.2事務開始
5.4 commit
5.19事務審計
5.20子事務審計
10索引操作

10.2插入頁塊記錄
10.3清除頁塊記錄
10.4刪除頁塊中的記錄
10.5還原頁塊日誌
10.6鎖定索引塊
10.7提交時清除塊中的操作碼
10.8初始化頭部
10.9 ITL1上應用XAT
10.10設定頁塊指向下一個頁塊的指標
10.11設定頁塊指向上一個頁塊的指標
10.12 root塊分裂後重新初始化

10.13清空頁塊
10.15分支塊中插入記錄
10.16清除分支塊中的記錄
10.18更新記錄中的鍵值
10.19清除分裂標誌
10.21撤銷分支塊操作
10.22撤銷頁塊操作
10.24收縮ITL
10.30更新非鍵值
10.31建立/裝載索引
10.34清空頁塊
11行資料操作

11.2插入一條資料
11.3刪除一條資料
11.4鎖定資料(select for update)
11.5更新記錄
11.6行連結
11.9 cluster鍵索引操作
11.10設定cluster鍵指標
11.11插入多條記錄
11.12刪除多條記錄
13段管理操作
14區塊管理操作
17表空間管理操作

17.1 end backup
18塊映像(手工熱備期間產生)

18.1 begin backup
19直接路徑裝載

19.1直接路徑裝載(歸檔模式)
19.2 nologging設定
20 Compatibility Segment
22本地管理表空間操作
23 block寫出

23.1 dbwr寫出block(9.0.1開始)
24 DDL語句

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2137100/,如需轉載,請註明出處,否則將追究法律責任。

相關文章