oracle datafile 與 object的關係
有時候為了檢查物理備庫是否正常,我們一般open read only 開啟,然後去查詢一些物件。這個比較直觀,然後如果想知道某些datafile是否正常,可以查詢對應file上的物件(當然還有一些常規方法dbv、VALIDATE DATAFILE),那怎麼知道datafile 與 object的關係呢,通過 v$bh可以大概看出來:
通過v$bh得到一些object:
SQL> select file#,block#,class#,status,xnc,objd from v$bh where ts#=6 and file#=53;
FILE# BLOCK# CLASS# STATUS XNC OBJD
---------- ---------- ---------- ---------- ---------- ----------
53 29073 0 free 0 20798
53 14928 0 free 0 22287
53 22151 0 free 0 23840
53 14352 0 free 0 22287
53 16216 0 free 0 22287
53 17936 0 free 0 22287
53 31882 0 free 0 24140
53 32581 0 free 0 24140
53 16627 0 free 0 22287
53 10370 0 free 0 22287
53 22774 0 free 0 23840
165 rows selected.
通過dump block得到一些具體的物件記錄:
alter system dump datafile 53 block 14352;
seg/obj: 0x570f csc: 0x0f.6c721bd0 itc: 2 flg: E typ: 1 - DATA ----> 0x570f 轉為十進位制為 22287
brn: 0 bdba: 0xd402883 ver: 0x01 opc: 0
inc: 0 exflg: 0
tab 0, row 0, @0x1f29
tl: 111 fb: --H-FL-- lb: 0x0 cc: 10
col 0: [ 2] c1 02
col 1: [ 5] c4 07 24 24 0f
col 2: [ 5] c4 13 60 37 63
還原dump資料(可參考http://space.itpub.net/758322/viewspace-751219 oracle 資料型別轉換)
SQL> declare n number;
2 begin
3 dbms_stats.convert_raw_value('c40724240f',n);
4 dbms_output.put_line(n);
5 end;
6 /
6353514
PL/SQL procedure successfully completed
SQL>
SQL> declare n number;
2 begin
3 dbms_stats.convert_raw_value('c413603763',n);
4 dbms_output.put_line(n);
5 end;
6 /
18955498
PL/SQL procedure successfully completed
驗證,可通過相應記錄的rowid轉換得到:
SQL> select object_name from dba_objects where object_id=22287;
OBJECT_NAME
--------------------------------------------------------------------------------
AAAAAA
SQL> select dbms_rowid.rowid_object(rowid) obj,
2 dbms_rowid.rowid_relative_fno(rowid) "file"
3 from AAAAAA a
4 where a.product_id = 6353514
5 and a.pic_id = 18955498;
OBJ file
---------- ----------
22287 53
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/758322/viewspace-751723/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Object與Class的關係Object
- object_id與data_object_id的關係Object
- tablespace和datafile之間的關係
- ArrayList的contains方法與Object的equals方法的關係AIObject
- 徹底搞懂Object和Function的關係ObjectFunction
- Oracle RAC與AIX重啟的關係OracleAI
- 與if的關係
- 【Datafile】Oracle單個datafile大小的限制Oracle
- oracle rac的vip與srvctl啟動關係Oracle
- Java中Class類與Object類之間有什麼關係?JavaObject
- Oracle datafileOracle
- 關聯關係與依賴關係的區別
- Oracle高可用概述(HA與RAC的關係解惑)Oracle
- RMAN連線與oracle連線模式的關係Oracle模式
- 利用SSH信任關係使用scp在後臺執行datafile的拷貝
- Oracle 資料庫檢視與基表的關係Oracle資料庫
- oracle 客戶端與伺服器端的關係Oracle客戶端伺服器
- SCN號與oracle資料庫恢復的關係Oracle資料庫
- Scala與Java的關係Java
- sip與openser的關係
- act與zsh的關係
- oracle session和process的關係OracleSession
- oracle控制檔案與資料庫啟動的關係Oracle資料庫
- (轉)SCN號與oracle資料庫恢復的關係Oracle資料庫
- oracle 9i 後 maxdatafiles 與db_files的關係Oracle
- SQL與NoSQL(關係型與非關係型)資料庫的區別SQL資料庫
- 行高與字型的關係
- create 與 store中的關係
- CQRS與OO思想的關係
- AIX aio與listener 的關係AI
- Socket與TCP/IP的關係TCP
- JRE 與 JVM 的關係JVM
- ERP 與 SAP的關係
- 圖片與向量的關係
- GNU與Linux 的關係Linux
- oracle redo record scn與transaction相關block scn關係小記Oracle RedoBloC
- <轉>Oracle資料型別與.NET中的對應關係Oracle資料型別
- Oracle 查詢表與表之間的 主外來鍵關係Oracle