用自己寫的awk指令碼及Oracle包成功恢復客戶的重要資料!
凌晨1點多接到客戶的電話,說一個表在匯出時發生ORA-600[kcfnew_2]錯誤。在網上搜了一下,也沒有什麼可以參考的案例,但大致意思是資料檔案有損壞。
檔案損壞也是事實了,其實幾個小時前就是因為SCN不一致,才加過事件調整SCN,把庫勉強啟動起來。
由於資料庫版本很低(Oracle 8.1.1+Linux),加了10231事件也不起作用,並且客戶催得緊,必須在6:00以前恢復應用。加事件匯出資料不成功,又考慮生成rowid,根據rowid來找回資料,並插入到新表,無賴出現“無效的rowid”錯誤,並且插入表時報表不存在;至此,只有從檔案中讀出資料再恢復了。由於沒有該平臺下的dul,只有試試前段時間自己寫的awk指令碼了。
根據損壞表的擴充套件資訊dump出每一個塊,就得到了這個表的所有十六進位制記錄資訊。到dump最後一個擴充套件時,報無效的rowid,估計損壞的就是這一部分了,由於是遠端操作,且時間緊張,也沒有仔細去管這一部分。
將幾十M的dump檔案壓縮後抓到本地後,進行Linux虛擬機器,幾分鐘就整理出了記錄資訊,一共七萬多條。跟客戶核對了一下,還差620條。再用自己寫的包處理後,資料還原了!由於是遠端操作,且是透過QQ完成,連Telnet都用不上,所以考慮將資料以insert語句的形式發給客戶。在測試的時候嚇了我一跳,說還差三個欄位!我仔細看了一下我的程式,再看看Dump資訊,只有九個欄位啊!那後面三個欄位一定是空欄位!找到開發商,確認此事後,開始生成insert語句。
將sql發給客戶後,馬上執行,沒有任何錯誤,資料恢復成功,不一會兒,就看到應用跑起來了!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21072/viewspace-815353/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一次客戶資料庫恢復的過程資料庫
- 一次客戶資料庫恢復的過程 [轉]資料庫
- 資料庫恢復(database restore)之兵不血刃——半小時恢復客戶資料庫資料庫DatabaseREST
- 自己寫的fabric指令碼指令碼
- Swift編寫自己的API客戶端SwiftAPI客戶端
- 幾個重要的指令碼來監控Oracle資料庫指令碼Oracle資料庫
- awk命令和指令碼的編寫啟蒙指令碼
- Oracle中truncate table後的資料恢復(Oracle資料恢復工具-ODU)Oracle資料恢復
- HDFS原始碼解析:教你用HDFS客戶端寫資料原始碼客戶端
- 【MySQL】Xtrabackup備份及恢復指令碼MySql指令碼
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- 基於tsm的oracle資料庫備份及恢復Oracle資料庫
- Oracle資料庫的備份及恢復策略研究(轉)Oracle資料庫
- python寫的部署windows下zabbix客戶端指令碼薦PythonWindows客戶端指令碼
- 恢復目錄資料庫備份指令碼資料庫指令碼
- 【資料庫資料恢復】Oracle資料庫誤truncate table的資料恢復案例資料庫資料恢復Oracle
- 【資料庫資料恢復】誤truncate table的Oracle資料庫資料恢復方案資料庫資料恢復Oracle
- Oracle12c多租戶資料庫備份與恢復 - PDB中資料檔案的恢復Oracle資料庫
- 非常實用的Oracle資料庫資料恢復方法案例Oracle資料庫資料恢復
- 幾種主要的oracle資料庫問題發生後資料恢復的成功概率分析Oracle資料庫資料恢復
- ORACLE資料恢復Oracle資料恢復
- SCN, checkpoint 及資料庫的恢復資料庫
- 伺服器資料恢復成功案例+伺服器資料恢復原理伺服器資料恢復
- linux系統資料恢復成功的過程Linux資料恢復
- 伺服器資料恢復成功案例(磁碟陣列恢復)伺服器資料恢復陣列
- 用Oracle閃回功能恢復偶然丟失的資料Oracle
- 使用儲存指令碼還原恢復資料庫指令碼資料庫
- Oracle資料庫Redo故障的恢復Oracle資料庫
- Oracle資料庫的非常規恢復Oracle資料庫
- 【資料庫資料恢復】ASM磁碟組掉線的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- HP Data Protector Manager 備份和恢復oracle資料庫參考指令碼Oracle資料庫指令碼
- ORACLE-資料恢復Oracle資料恢復
- 用DUL恢復故障的資料庫資料庫
- 【oracle資料庫資料恢復】誤操作導致的資料庫誤刪除的資料恢復案例Oracle資料庫資料恢復
- 【北亞資料恢復】異常斷電導致Oracle資料庫報錯的oracle資料恢復資料恢復Oracle資料庫
- 【資料庫資料恢復】Oracle ASM例項無法掛載的資料恢復案例資料庫資料恢復OracleASM
- Oracle備份與恢復【丟失資料檔案的恢復】Oracle
- 【資料庫資料恢復】ASM例項不能掛載的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle