sql server資料庫附加錯誤的解決過程
故障描述
本案例中涉及一臺裝有SqlServer資料庫的某品牌r520型號的伺服器儲存,這臺儲存中又包含有兩組磁碟陣列,raid級別都是raid5。正常情況下使用者的SqlServer資料庫存放在D盤中,後因為資料量大導致D盤容量不足,管理員便在E盤中生成了一個.ndf的檔案並且將資料庫路徑指向E盤繼續進行使用。但是大約半個月後資料庫突然出現故障報錯,連線失效,SqlServer資料庫無法附加查詢。管理員於是進行嘗試性資料恢復操作(管理員在原環境下進行了多次嘗試性恢復,導致了原始資料庫檔案被重複的更改、覆蓋,磁碟空間複寫)為後來的資料恢復工作增大了難度。備份資料
按照資料恢復行業慣例,所有資料在進行資料恢復操作前必須對資料進行完整映象,使用dd命令或資料恢復工具將所有磁碟都映象成檔案後對資料庫進行檢測和分析。故障分析
資料庫報錯的原因經工程師初步推斷可能是由於D盤的儲存空間不足導致的邏輯錯誤。工程師對儲存上的兩組raid5磁碟陣列進行分析重組,檢視其中的資料並將raid總的資料庫檔案備份出來進行嘗試性附加資料庫,但資料庫報錯。報錯內容為“主資料庫檔案和次級資料庫檔案不匹配”
資料恢復
資料恢復工程師檢視.ndf檔案底層,但是在該檔案中發現的資料量微乎其微,幾乎沒有任何資料,工程師將.mdf檔案和.ndf檔案之間的關聯關係取消,單獨使用.mdf檔案進行附加資料庫依然有報錯,報錯內容為“日誌檔案(.ldf)和資料庫檔案(.mdf)不匹配”。工程師繼續進行了資料庫的五資料庫附加操作,資料庫可以附加但系統表有損壞,資料庫依然無法正常使用。工程師嘗試修復資料庫系統表但是沒有成功,資料表損壞嚴重,修復難度極大且效果難以保障,資料恢復工程師決定放棄修復資料錶轉而嘗試其他方法。
資料恢復工程師將資料恢復的突破口放在資料庫記錄上,透過自己編寫的一個小程式將資料庫記錄提取出來,再根據客戶以的資料庫備份資料獲取到該資料庫的表結構。重構資料庫表結構,然後將資料庫記錄匯入新表。資料恢復成功
資料庫使用小提示
在資料庫使用過程中,要合理分配資料庫檔案所在磁碟空間,及時清理垃圾資料,保證資料庫的正常、安全執行。來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31380569/viewspace-2155469/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server裡附加資料庫出錯的解決方法SQLServer資料庫
- sql server資料庫連線失敗/無法附加解決過程SQLServer資料庫
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer
- sql server資料庫錯誤資料恢復(資料庫連線失效,無法附加查詢)SQLServer資料庫資料恢復
- SQL Server資料庫啟動過程詳解SQLServer資料庫
- SQL Server DACPAC資料庫部署錯誤SQLServer資料庫
- SQL Server2000資料庫附加提示“錯誤823“的快速修復SQLServer資料庫
- 附加和分離SQL Server資料庫方法SQLServer資料庫
- SQL Server 資料庫檔案的分離和附加SQLServer資料庫
- 用SQL Server資料庫處理資料層錯誤SQLServer資料庫
- SQL Server 無日誌檔案附加資料庫SQLServer資料庫
- MySQL資料庫錯誤server_errno=2013的解決MySql資料庫Server
- 解決 SQL Server2012附加出錯的問題SQLServer
- SQL SERVER Msg 7357錯誤解決SQLServer
- SQL Server置疑資料庫解決方法SQLServer資料庫
- Sql server資料庫人員:常見錯誤(轉)SQLServer資料庫
- Sql Server 資料庫中呼叫dll檔案的過程SQLServer資料庫
- SQL Server 2016資料庫快照代理過程詳解SQLServer資料庫
- SQL Server資料庫出現邏輯錯誤的資料恢復SQLServer資料庫資料恢復
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- 一個 ExpressionChangedAfterItHasBeenCheckedError 錯誤的解決過程ExpressError
- SQL Server 錯誤程式碼:17058 。解決方案SQLServer
- SQL Server資料庫佔用記憶體過多的解決方法SQLServer資料庫記憶體
- 一種SYBASE資料庫錯誤DBSQL_SQL_ERROR的解決方式資料庫SQLError
- 解決遷移資料庫錯誤,索引長度過長資料庫索引
- SQL Server 2005資料庫IN運算的一個錯誤SQLServer資料庫
- 解決SQL Server資料庫佔用記憶體過多的問題SQLServer資料庫記憶體
- SQL Server 2005無日誌檔案附加資料庫SQLServer資料庫
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- ORA-2049錯誤解決過程
- 通用的SQL Server資料庫查詢分頁儲存過程SQLServer資料庫儲存過程
- 附加資料庫失敗,作業系統錯誤 5:"5(拒絕訪問。)"的解決辦法資料庫作業系統
- SQL Server資料庫遠端更新目標表資料的儲存過程SQLServer資料庫儲存過程
- ORA-600(17069)錯誤的解決過程
- SQL Server 資料庫無法重新命名的解決SQLServer資料庫
- 【資料庫資料恢復】MS SQL資料庫附加資料庫出錯怎麼恢復資料?資料庫資料恢復SQL
- Troubleshooting: SQL Server連線錯誤解決方法列表SQLServer
- SQL Server資料庫恢復,SQL Server資料恢復,SQL Server資料誤刪除恢復工具SQLRescueSQLServer資料庫資料恢復