dul無(wú)法加載bootstrap實(shí)現(xiàn)unload table/user恢復(fù)
聯(lián)系:手機(jī)(+86 13429648788) QQ(107644445)QQ咨詢(xún)惜分飛
標(biāo)題:dul無(wú)法加載bootstrap實(shí)現(xiàn)unload table/user恢復(fù)
作者:惜分飛
最近有朋友誤操作引起了非常大的事故,差點(diǎn)吃了官司.在做數(shù)據(jù)庫(kù)遷移的時(shí)候,遠(yuǎn)程誤操作刪除了原庫(kù)的system等幾個(gè)數(shù)據(jù)庫(kù)初始安裝的文件,而且該磁盤(pán)空間使用率非常高,還有少量寫(xiě)入.
最后結(jié)果比較悲劇,通過(guò)文件系統(tǒng)層面無(wú)法直接恢復(fù)出來(lái)數(shù)據(jù)文件,而且該庫(kù)無(wú)任何有效備份,又沒(méi)有表名,列名等信息,無(wú)奈之下只能通過(guò)底層io block重組來(lái)恢復(fù)數(shù)據(jù)文件,可是悲劇又一次發(fā)生,這個(gè)磁盤(pán)上以前也有一份system等文件,最后經(jīng)過(guò)多方重組恢復(fù)出來(lái)一份相對(duì)理想的數(shù)據(jù)文件.
但是第三方公司通過(guò)這樣重組出來(lái)的數(shù)據(jù)文件和未被刪除的業(yè)務(wù)文件恢復(fù)出來(lái)的數(shù)據(jù)大量有問(wèn)題,依舊需要我們進(jìn)一步分析恢復(fù)處理.
這篇文章主要描述了dul在無(wú)法加載bootstrap命令之后通過(guò)一些方法依舊可以正常使用unload table/user 等命令實(shí)現(xiàn)數(shù)據(jù)盡可能恢復(fù).你要知道幾百?gòu)埍頉](méi)有表名/列名要把他們區(qū)分出來(lái)那是什么樣的工作量……
在dul中配置system文件
D:\xifenfei\system01.dbf D:\TEMP\recover\dul\bak>dul Data UnLoader: 11.2.0.0.4 - Internal Only - on Wed Sep 28 17:01:56 2016 with 64-bit io functions Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only DUL> show datafiles; Sorry, no valid data files found in control.txt
使用默認(rèn)的dul中數(shù)據(jù)文件配置方法,讓dul自己發(fā)現(xiàn)數(shù)據(jù)文件方法不可行
隨意表空間號(hào)和文件號(hào)dul識(shí)別
0 0 D:\xifenfei\system01.dbf D:\TEMP\recover\dul\bak>dul Data UnLoader: 11.2.0.0.4 - Internal Only - on Wed Sep 28 17:00:27 2016 with 64-bit io functions Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only DUL: Warning: File Type mismatch 1 != 8 DUL: Warning: D:\xifenfei\system01.dbf Header tablespace number 3 != 0 DUL: Warning: D:\xifenfei\system01.dbf Header relative file number 1 != 0 Found db_id = 2948357999 Found db_name = XIFENFEI DUL: Warning: Found mismatch while checking file D:\xifenfei\system01.dbf DUL: Warning: DUL osd_parameter or control.dul configuration error DUL: Warning: Given file number(0) in control file does not match file# in dba(1)
通過(guò)這個(gè)識(shí)別我們可以知道system的表空間號(hào)為3,文件號(hào)為1
再次配置system讓dul識(shí)別
3 1 D:\xifenfei\system01.dbf D:\TEMP\recover\dul\bak>dul Data UnLoader: 11.2.0.0.4 - Internal Only - on Wed Sep 28 17:03:46 2016 with 64-bit io functions Copyright (c) 1994 2016 Bernard van Duijnen All rights reserved. Strictly Oracle Internal Use Only DUL: Warning: File Type mismatch 1 != 8 Found db_id = 2948357999 Found db_name = XIFENFEI DUL> show datafiles; ts# rf# start blocks offs open err file name 3 1 0 320257 0 1 0 D:\xifenfei\system01.dbf
dul正常識(shí)別出來(lái)system文件但是根據(jù)經(jīng)驗(yàn)我們知道tablespace 3肯定是有問(wèn)題的,因此后續(xù)操作依舊問(wèn)題非常多
嘗試dul bootstrap恢復(fù)失敗
DUL> bootstrap; Scanning SYSTEM tablespace to locate compatibility segment ... DUL: Warning: No files found for tablespace 0 Reading EXT.dat 0 entries loaded and sorted 0 entries Reading SEG.dat 0 entries loaded Reading COMPATSEG.dat 0 entries loaded Reading SCANNEDLOBPAGE.dat 0 entries loaded and sorted 0 entries DUL: Error: No compatibility segments found
由于表空間號(hào)錯(cuò)誤,dul無(wú)法加載到bootstrap$表,另外根據(jù)bbed分析恢復(fù)出來(lái)的system文件中bootstrap$這部分丟失
嘗試人工加載dul所需數(shù)據(jù)字典
DUL> unload table OBJ$
2 storage ( tablespace 3 segobjno 18 file 1 block 240);
. unloading table OBJ$ 79074 rows unloaded
DUL> unload table TAB$( OBJ# number, DATAOBJ# number,
2 cluster C_OBJ#(OBJ#)
3 storage ( tablespace 3 segobjno 2 tabno 1 file 1 block 144);
. unloading table TAB$ 4482 rows unloaded
DUL> unload table COL$ ( OBJ# number, COL# number , SEGCOL# number,
2 cluster C_OBJ#(OBJ#)
3 storage ( tablespace 3 segobjno 2 tabno 5 file 1 block 144);
. unloading table COL$ 114491 rows unloaded
DUL> unload table USER$
2 cluster C_USER#(USER#)
3 storage ( tablespace 3 segobjno 10 tabno 1 file 1 block 208);
. unloading table USER$ 96 rows unloaded
----其他表省略,根據(jù)需要的依次處理
嘗試使用dul恢復(fù)數(shù)據(jù)
DUL> desc portal_emr.BASEELEMENT;
Table PORTAL_EMR.BASEELEMENT
obj#= 87200, dataobj#= 87200, ts#= 9, file#= 7, block#=458
tab#= 0, segcols= 8, clucols= 0
Column information:
icol# 01 segcol# 01 BENAME len 30 type 1 VARCHAR2 cs 852(ZHS16GBK)
icol# 02 segcol# 02 TYPENAME len 30 type 1 VARCHAR2 cs 852(ZHS16GBK)
icol# 03 segcol# 03 TYPETYPE len 22 type 2 NUMBER(0,0)
icol# 04 segcol# 04 BEXMLTEXT len 4000 type 1 VARCHAR2 cs 852(ZHS16GBK)
icol# 05 segcol# 05 DEPTGROUPCODE len 30 type 1 VARCHAR2 cs 852(ZHS16GBK)
icol# 06 segcol# 06 ISCOMMON len 22 type 2 NUMBER(0,0)
icol# 07 segcol# 07 BESPELL len 15 type 1 VARCHAR2 cs 852(ZHS16GBK)
icol# 08 segcol# 08 ELEMTYPE len 22 type 2 NUMBER(0)
DUL> show datafiles;
ts# rf# start blocks offs open err file name
3 1 0 320257 0 1 0 D:\xifenfei\system01.dbf
9 7 0 4170425 0 1 0 D:\BaiduYunDownload\PORTAL_EMR
DUL> unload table portal_emr.BASEELEMENT;
. unloading table BASEELEMENT 1913 rows unloaded
這里描述了在dul無(wú)法加載bootstrap命令之后,通過(guò)人工加載數(shù)據(jù)字典實(shí)現(xiàn)正常的unload table/user功能,丟棄了一般處理思路中的只能通過(guò)scan 然后unload沒(méi)有表名,列名的處理方法,從而實(shí)現(xiàn)了恢復(fù)的最大化.
我們對(duì)原廠(chǎng)官方oracle dual工具有深入研究,如果在oracle dul恢復(fù)方面有搞不定的問(wèn)題.
請(qǐng)聯(lián)系我們,提供專(zhuān)業(yè)ORACLE數(shù)據(jù)庫(kù)恢復(fù)技術(shù)支持
Phone:13429648788 Q Q:107644445 E-Mail:dba@xifenfei.com
以上所述是小編給大家介紹的dul無(wú)法加載bootstrap實(shí)現(xiàn)unload table/user恢復(fù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
jquery自動(dòng)補(bǔ)齊功能插件flexselect用法示例
這篇文章主要介紹了jquery自動(dòng)補(bǔ)齊功能插件flexselect用法,結(jié)合實(shí)例形式分析了flexselect實(shí)現(xiàn)自動(dòng)補(bǔ)齊功能的操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-08-08
原生Aajax 和jQuery Ajax 寫(xiě)法個(gè)人總結(jié)
AJAX:即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。本文重點(diǎn)給大家介紹原生Aajax 和jQuery Ajax 個(gè)人總結(jié),一起看看吧2017-03-03
jQGrid Table操作列中點(diǎn)擊【操作】按鈕彈出按鈕層的實(shí)現(xiàn)代碼
在使用JqGrid時(shí),Table中最后一列是操作列,在操作列中每一行都有一個(gè)操作按鈕,該操作按鈕和下拉菜單非常類(lèi)似,下面給大家分享jQGrid Table操作列中點(diǎn)擊【操作】按鈕彈出按鈕層的實(shí)現(xiàn)代碼,非常不錯(cuò),感興趣的朋友一起學(xué)習(xí)吧2016-12-12
jQuery checkbox選中問(wèn)題之prop與attr注意點(diǎn)分析
這篇文章主要介紹了jQuery checkbox選中問(wèn)題之prop與attr注意點(diǎn),結(jié)合form表單實(shí)例形式分析了針對(duì)火狐瀏覽器下checkbox失效情況的處理技巧,需要的朋友可以參考下2016-11-11
jquery ui dialog ie8出現(xiàn)滾動(dòng)條的解決方法
jquery ui 的 dialog 在IE8下會(huì)出現(xiàn)不該出現(xiàn)的滾動(dòng)條,在JQUI的FORUM上SEARCH下,發(fā)現(xiàn)也有人碰上,當(dāng)解決辦法就是把滾動(dòng)條隱藏2010-12-12
jquery鼠標(biāo)懸停導(dǎo)航下劃線(xiàn)滑出效果
這篇文章主要為大家詳細(xì)介紹了jquery鼠標(biāo)懸停導(dǎo)航下劃線(xiàn)滑出效果,菜單鼠標(biāo)懸停出現(xiàn)下劃線(xiàn),向兩邊擴(kuò)展的效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09

