精品日韩在线,日韩精品福利一区二区三区,日韩午夜黄色,国产日韩欧美高清免费

始創(chuàng)于2000年 股票代碼:831685
咨詢(xún)熱線:0371-60135900 注冊(cè)有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

Oracle的rowid和rdba庖丁解牛

發(fā)布時(shí)間:  2012/8/15 17:47:32

Oracle 8以下ROWID組成(也叫受限Rowid)為:FFFF.BBBBBBBB.RRRR,占用6個(gè)字節(jié)(10bit file#+22bit+16bit),但是,為了擴(kuò)充的需要,如數(shù)據(jù)文件的擴(kuò)充,現(xiàn)在的Rowid改為:OOOOOOFFFBBBBBBRRR,占用10個(gè)字節(jié)(32bit+10bit rfile#+22bit+16bit)。其中,O是對(duì)象ID,F(xiàn)是文件ID,B是塊ID,R是行ID。由于rowid的組成從file#變成了rfile#,所以數(shù)據(jù)文件數(shù)的限制也從整個(gè)庫(kù)不能超過(guò)1023個(gè)變成了每個(gè)表空間不能超過(guò)1023個(gè)數(shù)據(jù)文件。
-
 

注意:這里的O,代表的是data_object_id,是與段物理存儲(chǔ)位置相關(guān)的一個(gè)信息,因?yàn)橐粋(gè)段對(duì)象只可能在一個(gè)表空間上,data_object_id能唯一確認(rèn)ts#,而data_object_id + rfile#就能最終定位到該rowid在那個(gè)確定的物理數(shù)據(jù)文件。

如果我們查詢(xún)一個(gè)表的ROWID,就可以獲得object的信息,文件信息,塊信息與行信息等等,如根據(jù)其中塊的信息,可以知道該表確切占用了多少個(gè)塊,每行在哪個(gè)塊上,哪個(gè)數(shù)據(jù)文件上。

我們?cè)趕elect數(shù)據(jù)時(shí)候,在不指定排序字段時(shí), Oracle是按rowid升序取數(shù)據(jù)的。如

SQL> select t.id,rowid from skate.tab2 t;

        ID ROWID

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

   1067511 AAAO1lAAEAAAHKkAAA

   1067513 AAAO1lAAEAAAHKkAAB

   1067515 AAAO1lAAEAAAHKkAAC

   1067517 AAAO1lAAEAAAHKkAAD

   1067519 AAAO1lAAEAAAHKkAAE

   1067523 AAAO1lAAEAAAHKkAAG

   1067525 AAAO1lAAEAAAHKkAAH

   1067527 AAAO1lAAEAAAHKkAAI

8 rows selected

SQL>

可以從上面的顯示數(shù)據(jù)看到,是按rowid降序排列。我們拿rowid “AAAO1lAAEAAAHKkAAA”來(lái)說(shuō)明

Data Object number =AAAO1l

File id                  =AAE    

Block id              =AAAHKk

Row        =AAA

Rowid是64進(jìn)制的,可以通過(guò)進(jìn)制轉(zhuǎn)化工具來(lái)查看(http://www.2u3.cn/Conversion/jinzhi/

 

 A-Z <==> 0 - 25 (26)
a-z <==> 26 - 51 (26)
0-9 <==> 52 - 61 (10)
+/ <==> 62 - 63 (2)

 

 拿其中的Data Object number= AAAO1l為例子,

 

l是64進(jìn)制中的37,位置為0

37 * (64 ^ 0) = 37

1是64進(jìn)制中的53,位置為1

53 * (64 ^ 1) = 3392

O是64進(jìn)制中的 14,位置為2

14*(64^2)=57344

A是64進(jìn)制中的 0

所以

A * (64 ^ 3) = 0

A * (64 ^ 4) = 0

A * (64 ^ 5) = 0

則有AAAO1l= 0 + 0 + 0 + 57344+ 3392 + 37 = 60773,表示該行存在的對(duì)象,對(duì)應(yīng)的對(duì)象號(hào)為60773。

 

手工算還是比較麻煩的,Oracle為此提供相應(yīng)的函數(shù)dbms_rowid來(lái)實(shí)現(xiàn)

SQL> select dbms_rowid.rowid_object('AAAO1lAAEAAAHKkAAA') data_object_id#,

  2         dbms_rowid.rowid_relative_fno('AAAO1lAAEAAAHKkAAA') rfile#,

  3         dbms_rowid.rowid_block_number('AAAO1lAAEAAAHKkAAA') block#,

  4         dbms_rowid.rowid_row_number('AAAO1lAAEAAAHKkAAA') row# from dual;

DATA_OBJECT_ID#     RFILE#     BLOCK#       ROW#

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

          60773          4      29348          0

 

可以通過(guò)包的說(shuō)明或者Oracle官方手冊(cè)了解更多,例如:

SQL> desc dbms_rowid

Element                Type     

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

ROWID_TYPE_RESTRICTED  CONSTANT 

ROWID_TYPE_EXTENDED    CONSTANT 

ROWID_IS_VALID         CONSTANT 

ROWID_IS_INVALID       CONSTANT 

ROWID_OBJECT_UNDEFINED CONSTANT 

ROWID_CONVERT_INTERNAL CONSTANT 

ROWID_CONVERT_EXTERNAL CONSTANT 

ROWID_INVALID          EXCEPTION

ROWID_BAD_BLOCK        EXCEPTION

ROWID_CREATE           FUNCTION 

ROWID_INFO             PROCEDURE

ROWID_TYPE             FUNCTION 

ROWID_OBJECT           FUNCTION 

ROWID_RELATIVE_FNO     FUNCTION 

ROWID_BLOCK_NUMBER     FUNCTION 

ROWID_ROW_NUMBER       FUNCTION 

ROWID_TO_ABSOLUTE_FNO  FUNCTION 

ROWID_TO_EXTENDED      FUNCTION 

ROWID_TO_RESTRICTED    FUNCTION 

ROWID_VERIFY           FUNCTION 

 

SQL> desc dbms_rowid.rowid_info

Parameter     Type     Mode Default?

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

ROWID_IN      ROWID    IN           

ROWID_TYPE    NUMBER   OUT          

OBJECT_NUMBER NUMBER   OUT          

RELATIVE_FNO  NUMBER   OUT          

BLOCK_NUMBER  NUMBER   OUT          

ROW_NUMBER    NUMBER   OUT          

TS_TYPE_IN    VARCHAR2 IN   Y  

如果明白了以上ROWID的含義,那么就很容易理解塊的地址rdba了,也就是ROWID中的FFFBBBBBB部分,10bit rfile#+22bit,如我們分析一個(gè)塊地址:

 rdba: 0x010072a4

把0x010072a4轉(zhuǎn)化為10進(jìn)制16806564

SQL>   select dbms_utility.data_block_address_file(16806564) "file",

  2           dbms_utility.data_block_address_block(16806564) "block"

  3    from dual;

 

      file      block

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

         4      29348

 

SQL>

現(xiàn)在通過(guò)塊的dba知道了file和block,那怎樣確認(rèn)我們推到的正確呢? 這個(gè)塊地址是dump文件的內(nèi)容,我們可以去dump文件核對(duì)下

Start dump data blocks tsn: 4 file#: 4 minblk 29348 maxblk 29348

buffer tsn: 4 rdba: 0x010072a4 (4/29348)

scn: 0x0000.00e66a1e seq: 0x02 flg: 0x06 tail: 0x6a1e0602

frmt: 0x02 chkval: 0x4590 type: 0x06=trans data

Hex dump of block: st=0, typ_found=1

結(jié)果我們推導(dǎo)的和dump的內(nèi)容是一樣的,不過(guò)這里得到的4是rfile#,相對(duì)文件號(hào),而相對(duì)文件號(hào)是不能超過(guò)1023,所以,如果你想根據(jù)這個(gè)地址來(lái)dump數(shù)據(jù)文件塊的話(huà),最好還是核對(duì)一下v$datafile:

select file# from v$datafile where rfile# = 4 and ts# = <:dbfile_in_ts>

表空間的ts#可以通過(guò)如下sql得到:

  select ta.tablespace_name, da.TS#
    from dba_tablespaces ta, dba_data_files df, v$datafile da
   where ta.tablespace_name = df.tablespace_name
     and da.NAME = df.file_name

 例如:

SQL> select file# from v$datafile where rfile# = 4 and ts# = 4;

    FILE#

----------

         4

SQL>

 

如果數(shù)據(jù)文件數(shù)大于1023個(gè),這里file# 就不是4了,應(yīng)該是個(gè)絕對(duì)文件號(hào)了,這就是file#和rfile#的區(qū)別。如果dump數(shù)據(jù)塊,要用絕對(duì)文件號(hào)的,例如:

Alter system dump  datafile 4 block 29348;

也可以通過(guò)dba_segments,如

SQL>  select header_file,header_block from dba_segments where owner='SKATE' and segment_name='TAB2';

HEADER_FILE HEADER_BLOCK

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

          4        29347

這里段頭占有一個(gè)block,后面存儲(chǔ)的就是數(shù)據(jù),所以存儲(chǔ)數(shù)據(jù)的塊,應(yīng)該是29348

-----end-----


本文出自:億恩科技【www.zuiquanben.com】

服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1-20183354
  • 億恩南昌公司:
  • 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話(huà):0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話(huà):0371-60135900
  • 網(wǎng)絡(luò)版權(quán)侵權(quán)舉報(bào)電話(huà):0371-60135995
  • 警情提示:注意防范電信網(wǎng)絡(luò)詐騙
  • 專(zhuān)注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2026 ENKJ All Rights Reserved 地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師  B1-20183354   京公網(wǎng)安備41019702002023號(hào) 
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線

     
     
    精品日韩在线,日韩精品福利一区二区三区,日韩午夜黄色,国产日韩欧美高清免费
    日韩国产在线一| 免费在线观看视频一区| 亚洲男人在线| 亚洲免费观看高清完整版在线观| 狂野欧美性猛交xxxx| 国产精品久久久久久久久久久久久久久| 91麻豆精品激情在线观看最新 | 日韩av一区二区三区四区| 日韩和欧美的一区| 欧美激情精品| 欧美成人基地 | 亚洲一级大片| 久久精品99久久久| 国产精品99一区二区三区| 精品免费av| 欧美日韩色图| 亚洲精品九九| 丁香婷婷久久| 久久亚洲国产精品一区二区| 青青伊人久久| 日韩高清欧美| 亚洲三级国产| 国产一区丝袜| 香蕉久久国产| 久久精品国产精品亚洲毛片| 亚洲欧美一区在线| 欧美综合精品| 欧美成人基地| 日韩精品亚洲aⅴ在线影院| 久久国产三级| 欧美午夜精品一区二区三区电影| 亚洲不卡视频| 国产拍在线视频| 中文无码日韩欧| 国产专区精品| 亚洲一级大片| 国产中文字幕一区二区三区| 黑丝一区二区三区| 欧美aⅴ一区二区三区视频| 国产伊人精品| 国产精品国码视频| 欧美另类综合| 久久中文字幕一区二区| 欧美精品一线| 国产精品免费99久久久| 一区二区三区视频免费观看| 日本欧美在线| 亚洲高清毛片| 久久精品国产精品亚洲毛片| 蜜臀av性久久久久蜜臀aⅴ四虎| 动漫av一区| 日韩高清电影免费| 欧美在线亚洲综合一区| 久久一区精品| 日本亚洲视频在线| 视频一区中文| 国产精品99久久精品| 日本a口亚洲| 91精品99| 亚洲国产福利| 国产极品一区| 亚洲人成精品久久久| 欧美日韩在线二区| 国产一区调教| 国产精品视频3p| 日本在线观看不卡视频| 午夜久久99| 亚洲日本网址| 精品视频高潮| 国产欧美二区| 日韩亚洲精品在线观看| 欧美日韩视频一区二区三区| 日韩综合精品| 九九久久国产| 欧美日韩亚洲国产精品| 视频一区二区三区在线| 欧美aa国产视频| 国产亚洲一区二区手机在线观看| 国产精品一区二区三区www| 婷婷亚洲成人| 一区二区三区网站| 热久久国产精品| 国产精品嫩草99av在线| 美女少妇全过程你懂的久久| 久久免费国产| 欧美片第1页| 亚洲风情在线资源| 欧美天堂视频| 日韩在线看片| a日韩av网址| 亚洲国产欧美日本视频| 人人草在线视频| 九色porny丨国产首页在线| 成人日韩在线| 欧美理论视频| 国产视频一区欧美| 国产视频一区三区| 日av在线不卡| 日韩美女国产精品| 蜜桃视频在线观看一区| 蜜桃伊人久久| 中文精品电影| 亚洲精品护士| 亚洲久久在线| 亚州av乱码久久精品蜜桃| 免费国产自久久久久三四区久久 | 国产精品一区二区三区美女 | 精品视频网站| 日韩欧美字幕| 成人羞羞视频播放网站| 亚洲福利精品| 视频在线在亚洲| 日韩国产欧美在线视频| 久久国产精品色av免费看| 国产精品极品在线观看| av资源新版天堂在线| 91精品一区国产高清在线gif | 国产一区二区中文| 国产精品腿扒开做爽爽爽挤奶网站| 国产色综合网| 日韩成人一级| 精品久久久久久久| 亚洲成人国产| 免费的成人av| 国产激情一区| 日本不卡免费高清视频在线| 激情欧美日韩一区| 蜜臀av在线播放一区二区三区| 欧美片第1页综合| 色在线中文字幕| 亚洲天堂免费| 国产在线观看91一区二区三区| 91精品国产自产在线观看永久∴| 免费成人性网站| 欧美极品中文字幕| 91精品久久久久久久久久不卡| 久久成人国产| 另类小说一区二区三区| 久久免费高清| 国产视频网站一区二区三区| 欧美片第1页| 婷婷综合国产| xxxxx性欧美特大| 一本色道久久精品| 久久三级中文| 免费视频久久| 国产成年精品| 久久亚洲一区| 精品九九久久| 亚洲一区成人| 久久精品一本| 免费观看在线综合| 色在线视频观看| 日韩国产在线不卡视频| 免费污视频在线一区| 日韩三级精品| 久久精品亚洲欧美日韩精品中文字幕| 日韩综合一区二区三区| 久久国产日韩| 国产精品久久久一区二区| 免费观看久久av| 久久国产精品美女| 视频在线在亚洲| 日韩精品免费一区二区在线观看 | 日本欧洲一区二区| 岛国av免费在线观看| 日韩一区二区三免费高清在线观看| 精品免费av在线| 国产日韩高清一区二区三区在线 | 特黄毛片在线观看| 亚洲精品在线国产| 激情亚洲影院在线观看| 91麻豆精品| 亚洲高清影视| yellow在线观看网址| 国产欧美88| 色综合视频一区二区三区日韩 | 日本一区二区三区视频在线看| 中文字幕高清在线播放| 欧美在线黄色| 免费日韩av| 九九综合九九| 久久精品免费一区二区三区| 欧美国产另类| 日韩高清不卡在线| 综合激情一区| 亚洲香蕉网站| 丁香婷婷久久| 国产免费播放一区二区| 视频一区中文字幕精品| 亚洲一区区二区| 亚洲午夜精品久久久久久app| 老司机精品视频网| 欧美国产日本| 国产日韩高清一区二区三区在线 | 涩涩涩久久久成人精品| 男女精品网站| 性欧美精品高清| 亚洲欧美日韩专区| 亚洲欧美日韩视频二区|