溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

bbed 修復數(shù)據(jù)文件頭

發(fā)布時間:2020-07-14 12:31:05 來源:網(wǎng)絡(luò) 閱讀:1077 作者:qhd2004 欄目:數(shù)據(jù)庫

把同一表空間下的好的數(shù)據(jù)文件頭拷貝到有問題的數(shù)據(jù)文件頭,例如:

copy file x block 1 to file y block 1,然后按如下offset來確認并修改。

  1. rdba_kcbh (offset  4)  即使文件頭block的rdba地址

2. kccfhfsz (offset  44) 即文件大小

3. kccfhfno (offset  52) 即datafile文件號

4. kscnbas  (offset 100) 即v$datafile.create_change#

5. kcvfhcrt (offset 108) 即v$datafile.create_time

6. kcvfhtsn (offset 332) 即v$datafile.ts#,表示表空間號

7. kcvfhrfn (offset 368) 即v$datafile.rfile#, 表示相對文件號

8. kcvfhtnm (offset 338) 即v$tablespace.name,表示表空間名稱(根據(jù)實際情況,可能還會需要修改kcvfhtln,表示表空間名稱字符長度)

9. kscnbas  (offset 484) 即checkpoint scn

10.kcvcptim (offset 492) 即last checkpoint time.


用來修復非system表空間的數(shù)據(jù)文件頭。

select file#,to_char(creation_time,'yyyy-mm-dd hh34:mi:ss') creation_time_file,

       (to_char(creation_time,'yyyy')-1988)*12*31*24*3600+

       (to_char(creation_time,'mm')-1)*31*24*3600+

       (to_char(creation_time,'dd')-1)*24*3600+

       to_char(creation_time,'hh34')*3600+

       to_char(creation_time,'mi')*60+

       to_char(creation_time,'ss') creation_name_scn

from v$datafile order by 1;


select file#,to_char(CHECKPOINT_TIME,'yyyy-mm-dd hh34:mi:ss') CHECKPOINT_TIME_file,

   (to_char(CHECKPOINT_TIME,'yyyy')-1988)*12*31*24*3600+

   (to_char(CHECKPOINT_TIME,'mm')-1)*31*24*3600

   +(to_char(CHECKPOINT_TIME,'dd')-1)*24*3600

   +to_char(CHECKPOINT_TIME,'hh34')*3600

   +to_char(CHECKPOINT_TIME,'mi')*60

   +to_char(CHECKPOINT_TIME,'ss') CHECKPOINT_TIME_scn

   from v$datafile order by 1;


在修復過程中開兩個session,一個查看好的數(shù)據(jù)文件頭,一個用于修改,先做對比,然后再修改,減少誤操作。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI