99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SQL SERVER數(shù)據(jù)庫ndf文件損壞的數(shù)據(jù)恢復案例

Frombyte ? 來源:Frombyte ? 作者:Frombyte ? 2023-04-27 11:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

數(shù)據(jù)庫數(shù)據(jù)恢復環(huán)境:
某公司存儲上部署SQL SERVER數(shù)據(jù)庫,數(shù)據(jù)庫中有1000多個文件,該SQL SERVER數(shù)據(jù)庫每10天生成一個NDF文件,數(shù)據(jù)庫包含兩個LDF文件。

數(shù)據(jù)庫故障&分析:
存儲設備出現(xiàn)故障導致SQL SERVER數(shù)據(jù)庫異常,經(jīng)過檢測發(fā)現(xiàn)有幾個ndf文件大小變?yōu)?KB。
雖然存儲故障導致NDF文件大小變?yōu)?KB,但是數(shù)據(jù)恢復工程師推測NDF文件還存在于磁盤中。可以通過編寫數(shù)據(jù)庫掃描碎片程序掃描數(shù)據(jù)庫碎片,通過碎片拼接來恢復NDF文件,最后修復數(shù)據(jù)庫。

數(shù)據(jù)庫數(shù)據(jù)恢復過程:
1、將故障存儲中所有磁盤以只讀方式進行全盤備份,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復操作都基于鏡像文件進行,避免數(shù)據(jù)恢復過程中可能對原始數(shù)據(jù)造成的二次破壞。
2、由北亞企安數(shù)據(jù)恢復工程師編寫數(shù)據(jù)庫碎片掃描程序掃描數(shù)據(jù)庫碎片。
3、根據(jù)NDF文件的頁面特征,按照文件號,頁號拼接掃描出來的數(shù)據(jù)庫碎片,重組生成出這些0kb的NDF文件。
4、使用北亞企安自主開發(fā)的MSSQL文件檢測工具對所有數(shù)據(jù)文件進行檢測,結果發(fā)現(xiàn)拼接出的4個NDF文件有少量的空數(shù)據(jù)頁,其他文件正常。
5、進一步分析存儲中損壞的lun,發(fā)現(xiàn)這些空數(shù)據(jù)頁在存儲層面已經(jīng)完全損壞,無法恢復,即這4個NDF文件不能完全恢復。
6、嘗試附加數(shù)據(jù)庫,報錯 “處理數(shù)據(jù)庫的日志時出錯,如果可能請從備份還原。如果沒有可用的備份,可能需要重新生成日志”。
7、修改系統(tǒng)表,從系統(tǒng)表剔除掉最后添加的LDF文件,計算并修改校驗。嘗試進行無日志附加數(shù)據(jù)庫,報錯:“數(shù)據(jù)庫存在一致性錯誤”。
8、修改系統(tǒng)表中這4個損壞的NDF文件的塊數(shù)量,使數(shù)據(jù)庫中記錄的文件的塊數(shù)量和拼接出來的NDF的塊數(shù)量一致,計算并修改校驗值。無日志附加數(shù)據(jù)庫,仍然報錯“數(shù)據(jù)庫存在一致性錯誤”。
9、由于空數(shù)據(jù)頁都出現(xiàn)在這4個NDF文件后面的十幾個塊中,截斷文件對數(shù)據(jù)完整性影響不大。重新修改系統(tǒng)表和NDF文件,將數(shù)據(jù)庫中記錄NDF塊數(shù)量的值改至報錯的前一頁,計算并修改校驗。重新進行無日志附加數(shù)據(jù)庫,報錯“由于數(shù)據(jù)庫沒有完全關閉,無法重新生成日志”。
10、修改MDF文件中的數(shù)據(jù)庫的狀態(tài)值,讓數(shù)據(jù)庫認為是完全關閉的。重新附加數(shù)據(jù)庫,附加成功。

數(shù)據(jù)庫數(shù)據(jù)驗證:
數(shù)據(jù)庫文件成功附加后,用戶通過數(shù)據(jù)庫中的對象進行初步查詢、驗證,經(jīng)過反復驗證后確認表中信息正確,數(shù)據(jù)完整可用。本次數(shù)據(jù)恢復工作完成。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • SQL
    SQL
    +關注

    關注

    1

    文章

    783

    瀏覽量

    45120
  • 數(shù)據(jù)恢復

    關注

    10

    文章

    649

    瀏覽量

    18141
  • 數(shù)據(jù)庫

    關注

    7

    文章

    3926

    瀏覽量

    66184
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    數(shù)據(jù)庫數(shù)據(jù)恢復—MongoDB數(shù)據(jù)庫文件丟失的數(shù)據(jù)恢復案例

    MongoDB數(shù)據(jù)庫數(shù)據(jù)恢復環(huán)境: 一臺操作系統(tǒng)為Windows Server的虛擬機上部署MongoDB數(shù)據(jù)庫。 MongoDB
    的頭像 發(fā)表于 07-01 11:13 ?147次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—MongoDB<b class='flag-5'>數(shù)據(jù)庫文件</b>丟失的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復SQL Server數(shù)據(jù)庫被加密如何恢復數(shù)據(jù)?

    SQL Server數(shù)據(jù)庫故障: SQL Server數(shù)據(jù)庫被加密,無法使用。
    的頭像 發(fā)表于 06-25 13:54 ?138次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—<b class='flag-5'>SQL</b> <b class='flag-5'>Server</b><b class='flag-5'>數(shù)據(jù)庫</b>被加密如何<b class='flag-5'>恢復數(shù)據(jù)</b>?

    數(shù)據(jù)庫數(shù)據(jù)恢復——MongoDB數(shù)據(jù)庫文件拷貝后服務無法啟動的數(shù)據(jù)恢復

    MongoDB數(shù)據(jù)庫數(shù)據(jù)恢復環(huán)境: 一臺Windows Server操作系統(tǒng)虛擬機上部署MongoDB數(shù)據(jù)庫。 MongoDB
    的頭像 發(fā)表于 04-09 11:34 ?300次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>——MongoDB<b class='flag-5'>數(shù)據(jù)庫文件</b>拷貝后服務無法啟動的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>

    數(shù)據(jù)庫數(shù)據(jù)恢復SQL Server附加數(shù)據(jù)庫提示“錯誤 823”的數(shù)據(jù)恢復案例

    SQL Server數(shù)據(jù)庫附加數(shù)據(jù)庫過程中比較常見的報錯是“錯誤 823”,附加數(shù)據(jù)庫失敗。 如果數(shù)據(jù)
    的頭像 發(fā)表于 02-28 11:38 ?476次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—<b class='flag-5'>SQL</b> <b class='flag-5'>Server</b>附加<b class='flag-5'>數(shù)據(jù)庫</b>提示“錯誤 823”的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    Devart: dbForge Compare Bundle for SQL Server—比較SQL數(shù)據(jù)庫最簡單、最準確的方法

    、備份和腳本文件夾中的數(shù)據(jù)差異。它可以同步任意數(shù)量數(shù)據(jù)庫中的數(shù)據(jù),只需點擊幾下即可恢復損壞或丟失
    的頭像 發(fā)表于 01-17 11:35 ?555次閱讀

    dbForge Studio For SQL Server:用于有效開發(fā)的最佳SQL Server集成開發(fā)環(huán)境

    管理 單元測試 數(shù)據(jù)庫文檔 測試數(shù)據(jù)生成 數(shù)據(jù)導出和導入 為什么dbForge Studio For SQL Server是一個好的選擇 更
    的頭像 發(fā)表于 01-16 10:36 ?731次閱讀

    SqlServer數(shù)據(jù)恢復—SqlServer數(shù)據(jù)庫數(shù)據(jù)恢復案例

    一塊硬盤上存放的SqlServer數(shù)據(jù)庫,windows server操作系統(tǒng)+NTFS文件系統(tǒng)。由于誤操作導致分區(qū)損壞,需要恢復硬盤里的S
    的頭像 發(fā)表于 01-09 11:15 ?424次閱讀
    SqlServer<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—SqlServer<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復—MYSQL數(shù)據(jù)庫ibdata1文件損壞數(shù)據(jù)恢復案例

    mysql數(shù)據(jù)庫故障: mysql數(shù)據(jù)庫文件ibdata1、MYI、MYD損壞。 故障表現(xiàn):1、數(shù)據(jù)庫無法進行查詢等操作;2、使用mysqlcheck和myisamchk無法修復
    的頭像 發(fā)表于 12-09 11:05 ?631次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復—通過拼接數(shù)據(jù)庫碎片恢復SQLserver數(shù)據(jù)庫

    一個運行在存儲上的SQLServer數(shù)據(jù)庫,有1000多個文件,大小幾十TB。數(shù)據(jù)庫每10天生成一個NDF文件,每個
    的頭像 發(fā)表于 10-31 13:21 ?695次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—通過拼接<b class='flag-5'>數(shù)據(jù)庫</b>碎片<b class='flag-5'>恢復</b>SQLserver<b class='flag-5'>數(shù)據(jù)庫</b>

    oracle數(shù)據(jù)恢復—Oracle數(shù)據(jù)庫打開報錯的數(shù)據(jù)恢復案例

    打開oracle數(shù)據(jù)庫時報錯,報錯信息:“system01.dbf需要更多的恢復來保持一致性,數(shù)據(jù)庫無法打開”。急需恢復zxfg用戶下的數(shù)據(jù)
    的頭像 發(fā)表于 10-17 13:20 ?518次閱讀
    oracle<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—Oracle<b class='flag-5'>數(shù)據(jù)庫</b>打開報錯的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    Oracle數(shù)據(jù)恢復—異常斷電后Oracle數(shù)據(jù)庫報錯的數(shù)據(jù)恢復案例

    Oracle數(shù)據(jù)庫的在線文件,需要恢復zxfg用戶的數(shù)據(jù)。 Oracle數(shù)據(jù)庫恢復方案:
    的頭像 發(fā)表于 09-30 13:31 ?723次閱讀
    Oracle<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—異常斷電后Oracle<b class='flag-5'>數(shù)據(jù)庫</b>啟<b class='flag-5'>庫</b>報錯的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復—Oracle數(shù)據(jù)庫文件system01.dbf損壞數(shù)據(jù)恢復案例

    打開oracle數(shù)據(jù)庫報錯“system01.dbf需要更多的恢復來保持一致性,數(shù)據(jù)庫無法打開”。
    的頭像 發(fā)表于 09-21 14:25 ?966次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—Oracle<b class='flag-5'>數(shù)據(jù)庫文件</b>system01.dbf<b class='flag-5'>損壞</b>的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復SQL Server數(shù)據(jù)庫出現(xiàn)823錯誤的數(shù)據(jù)恢復案例

    SQL Server數(shù)據(jù)庫故障: SQL Server附加數(shù)據(jù)庫出現(xiàn)錯誤823,附加
    的頭像 發(fā)表于 09-20 11:46 ?700次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—<b class='flag-5'>SQL</b> <b class='flag-5'>Server</b><b class='flag-5'>數(shù)據(jù)庫</b>出現(xiàn)823錯誤的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復—SqlServer數(shù)據(jù)庫底層File Record被截斷為0的數(shù)據(jù)恢復案例

    SQL Server數(shù)據(jù)庫數(shù)據(jù)無法被讀取。 經(jīng)過數(shù)據(jù)庫數(shù)據(jù)
    的頭像 發(fā)表于 07-26 11:27 ?741次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>—SqlServer<b class='flag-5'>數(shù)據(jù)庫</b>底層File Record被截斷為0的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復</b>案例

    恒訊科技分析:sql數(shù)據(jù)庫怎么用?

    SQL數(shù)據(jù)庫的使用通常包括以下幾個基本步驟: 1、選擇數(shù)據(jù)庫系統(tǒng): 選擇適合您需求的SQL數(shù)據(jù)庫系統(tǒng),如MySQL、PostgreSQL、M
    的頭像 發(fā)表于 07-15 14:40 ?639次閱讀