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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—ndf文件大小變?yōu)?KB的數(shù)據(jù)恢復(fù)案例

Frombyte ? 來源:Frombyte ? 作者:Frombyte ? 2024-05-07 11:19 ? 次閱讀

SQL Server數(shù)據(jù)庫故障:
存儲(chǔ)設(shè)備損壞導(dǎo)致存儲(chǔ)中SQL Server數(shù)據(jù)庫崩潰。對(duì)數(shù)據(jù)庫文件進(jìn)行恢復(fù)后,用戶發(fā)現(xiàn)有4個(gè)ndf文件的大小變?yōu)?KB。該SQL Server數(shù)據(jù)庫每10天生成一個(gè)大小相同的NDF文件,該SQL Server數(shù)據(jù)庫包含兩個(gè)LDF文件。

SQL Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)過程:
1、將故障存儲(chǔ)中所有磁盤編號(hào)后取出,由硬件工程師檢測(cè)后沒有發(fā)現(xiàn)有硬盤存在硬件故障。以只讀方式將所有磁盤進(jìn)行扇區(qū)級(jí)的全盤鏡像后,按照編號(hào)還原到原存儲(chǔ)中,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免對(duì)原始磁盤數(shù)據(jù)造成二次破壞。
2、北亞企安數(shù)據(jù)恢復(fù)工程師編寫數(shù)據(jù)庫掃描碎片程序掃描磁盤中數(shù)據(jù)庫碎片。根據(jù)NDF文件的頁面特征,按照文件號(hào)和頁號(hào)拼接碎片,重組生成這些0kb的NDF文件。
3、使用北亞企安自主開發(fā)的MSSQL文件檢測(cè)工具對(duì)所有數(shù)據(jù)文件進(jìn)行檢測(cè),結(jié)果發(fā)現(xiàn)通過拼接重組生成的4個(gè)NDF文件有少量的空頁,其他文件正常。
4、對(duì)損壞的lun做進(jìn)一步分析,發(fā)現(xiàn)這些數(shù)據(jù)頁在存儲(chǔ)層面已經(jīng)不存在了,無法恢復(fù)這些數(shù)據(jù)頁,即這4個(gè)NDF文件無法完全恢復(fù)。
5、嘗試附加數(shù)據(jù)庫,報(bào)錯(cuò) “處理數(shù)據(jù)庫的日志時(shí)出錯(cuò),如果可能請(qǐng)從備份還原。如果沒有可用的備份,可能需要重新生成日志”。
6、修改系統(tǒng)表,從系統(tǒng)表剔除掉最后添加的LDF文件,計(jì)算并修改校驗(yàn)。嘗試進(jìn)行無日志附加數(shù)據(jù)庫,報(bào)錯(cuò):“數(shù)據(jù)庫存在一致性錯(cuò)誤?!?br /> 7、修改系統(tǒng)表中這4個(gè)損壞的NDF文件的塊數(shù)量,使其和恢復(fù)出來的文件的塊數(shù)量一致。修改系統(tǒng)表,將系統(tǒng)表記錄這4個(gè)NDF的塊數(shù)量的值改為和掃描出來的NDF文件塊數(shù)量一致,同時(shí)修改這4個(gè)NDF文件,使得數(shù)據(jù)庫中記錄的文件的塊數(shù)量和拼接出來的NDF的塊數(shù)量一致,計(jì)算并修改校驗(yàn)值。
8、無日志附加數(shù)據(jù)庫,報(bào)錯(cuò)“數(shù)據(jù)庫存在一致性錯(cuò)誤。”
9、逐個(gè)修改系統(tǒng)表中這4個(gè)損壞的NDF文件的塊數(shù)量,使其值等于報(bào)錯(cuò)塊的前一頁。由于空頁都出現(xiàn)在這4個(gè)NDF后面十幾個(gè)塊中,截?cái)辔募?duì)數(shù)據(jù)完整性影響不大。重新修改系統(tǒng)表和NDF文件,將數(shù)據(jù)庫中記錄NDF塊數(shù)量的值改至報(bào)錯(cuò)的前一頁,計(jì)算并修改校驗(yàn)。
10 、重新進(jìn)行無日志附加數(shù)據(jù)庫,報(bào)錯(cuò)“由于數(shù)據(jù)庫沒有完全關(guān)閉,無法重新生成日志?!?br /> 11、修改MDF文件中的數(shù)據(jù)庫的狀態(tài)值,讓數(shù)據(jù)庫認(rèn)為是完全關(guān)閉的。重新附加數(shù)據(jù)庫,附加成功。
12、數(shù)據(jù)庫文件成功附加后,用戶方通過數(shù)據(jù)庫中的對(duì)象進(jìn)行初步查詢、驗(yàn)證,經(jīng)過檢測(cè)發(fā)現(xiàn)表中數(shù)據(jù)完整,認(rèn)可數(shù)據(jù)恢復(fù)結(jié)果。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

    SQL Server數(shù)據(jù)庫故障: SQL Server附加數(shù)據(jù)庫出現(xiàn)錯(cuò)誤823,附加數(shù)據(jù)庫失敗。數(shù)據(jù)庫沒有備份,無法通過備份恢復(fù)數(shù)據(jù)庫。
    的頭像 發(fā)表于 09-20 11:46 ?70次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SQL Server<b class='flag-5'>數(shù)據(jù)庫</b>出現(xiàn)823錯(cuò)誤的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫底層File Record被截?cái)酁?b class='flag-5'>0的數(shù)據(jù)恢復(fù)案例

    SQL Server數(shù)據(jù)庫數(shù)據(jù)無法被讀取。 經(jīng)過數(shù)據(jù)庫數(shù)據(jù)恢復(fù)工程師的初步檢測(cè),發(fā)現(xiàn)SQL Server
    的頭像 發(fā)表于 07-26 11:27 ?246次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SqlServer<b class='flag-5'>數(shù)據(jù)庫</b>底層File Record被截?cái)酁?b class='flag-5'>0</b>的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫所在分區(qū)空間不足報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

    Server數(shù)據(jù)庫故障: 存放SQL Server數(shù)據(jù)庫的D盤分區(qū)容量不足,管理員在E盤中生成了一個(gè).ndf文件并且將數(shù)據(jù)庫路徑指向E
    的頭像 發(fā)表于 07-10 13:54 ?297次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)數(shù)據(jù)庫所在分區(qū)空間不足導(dǎo)致sqlserver故障的數(shù)據(jù)恢復(fù)案例

    數(shù)據(jù)。服務(wù)器上部署sql server數(shù)據(jù)庫數(shù)據(jù)庫存放在C盤。 數(shù)據(jù)庫故障: 工作人員發(fā)現(xiàn)服務(wù)器的C盤容量即將耗盡,于是將sql server
    的頭像 發(fā)表于 05-22 13:16 ?262次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—<b class='flag-5'>數(shù)據(jù)庫</b>所在分區(qū)空間不足導(dǎo)致sqlserver故障的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—raid5陣列上層Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境: 5塊硬盤組建一組RAID5陣列,劃分LUN供windows系統(tǒng)服務(wù)器使用。windows系統(tǒng)服務(wù)器內(nèi)運(yùn)行了Sql Server數(shù)據(jù)庫,存儲(chǔ)空間在操作系統(tǒng)層面劃分
    的頭像 發(fā)表于 05-08 11:43 ?391次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—raid5陣列上層Sql Server<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    MongoDB數(shù)據(jù)恢復(fù)—MongoDB數(shù)據(jù)庫文件損壞的數(shù)據(jù)恢復(fù)案例

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: 一臺(tái)Windows Server操作系統(tǒng)服務(wù)器,服務(wù)器上部署MongoDB數(shù)據(jù)庫。 MongoDB數(shù)據(jù)庫故障&檢測(cè): 工作人員在未關(guān)閉MongoDB
    的頭像 發(fā)表于 04-23 14:48 ?272次閱讀
    MongoDB<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—MongoDB<b class='flag-5'>數(shù)據(jù)庫文件</b>損壞的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

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

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: 一臺(tái)安裝windows server操作系統(tǒng)的服務(wù)器。一組由8塊硬盤組建的RAID5,劃分LUN供這臺(tái)服務(wù)器使用。 在windows服務(wù)器內(nèi)裝有SqlServer數(shù)據(jù)庫
    的頭像 發(fā)表于 04-11 15:38 ?629次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—Sql Server<b class='flag-5'>數(shù)據(jù)庫文件</b>丟失的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—未開啟binlog的Mysql數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例

    mysql數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境: 本地服務(wù)器,windows server操作系統(tǒng) ,部署有mysql單實(shí)例,數(shù)據(jù)庫引擎類型為innodb,獨(dú)立表空間,無
    的頭像 發(fā)表于 12-08 14:18 ?926次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—未開啟binlog的Mysql<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    MySQL數(shù)據(jù)庫是如何應(yīng)對(duì)故障恢復(fù)數(shù)據(jù)恢復(fù)回滾的問題呢?

    今天這篇文章,我想聊一聊MySQL數(shù)據(jù)庫是如何應(yīng)對(duì)故障恢復(fù),與數(shù)據(jù)恢復(fù)回滾的問題。一個(gè)最基本的數(shù)據(jù)庫,應(yīng)當(dāng)可以做到以下幾點(diǎn)
    的頭像 發(fā)表于 11-27 10:04 ?938次閱讀
    MySQL<b class='flag-5'>數(shù)據(jù)庫</b>是如何應(yīng)對(duì)故障<b class='flag-5'>恢復(fù)</b>與<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>回滾的問題呢?

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQLserver數(shù)據(jù)庫被加密如何恢復(fù)數(shù)據(jù)

    一臺(tái)服務(wù)器上的SQLserver數(shù)據(jù)庫被勒索病毒加密,無法正常使用。該服務(wù)器上部署有多個(gè)SQLserver數(shù)據(jù)庫,其中有2個(gè)數(shù)據(jù)庫及備份文件被加密,
    的頭像 發(fā)表于 11-23 14:42 ?794次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SQLserver<b class='flag-5'>數(shù)據(jù)庫</b>被加密如何<b class='flag-5'>恢復(fù)數(shù)據(jù)</b>?

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—MSSQL Server報(bào)錯(cuò)“附加數(shù)據(jù)庫錯(cuò)誤823”的數(shù)據(jù)恢復(fù)案例

    MSSQL Server數(shù)據(jù)庫比較常見的報(bào)錯(cuò)是“附加數(shù)據(jù)庫錯(cuò)誤823”。如果數(shù)據(jù)庫有備份,只需要還原備份即可;如果無備份或者備份不可用,則需要使用專業(yè)的數(shù)據(jù)
    的頭像 發(fā)表于 11-10 16:20 ?698次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—MSSQL Server報(bào)錯(cuò)“附加<b class='flag-5'>數(shù)據(jù)庫</b>錯(cuò)誤823”的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例

    服務(wù)器數(shù)據(jù)恢復(fù)—誤還原快照導(dǎo)致SqlServer數(shù)據(jù)庫數(shù)據(jù)丟失的數(shù)據(jù)恢復(fù)案例

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: vmfs文件系統(tǒng),存放的是SqlServer數(shù)據(jù)庫及其他辦公文件。 服務(wù)器故障: 工作人員誤操作還原快照,導(dǎo)
    的頭像 發(fā)表于 11-06 15:06 ?548次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)-oracle數(shù)據(jù)庫報(bào)錯(cuò)無法打開的數(shù)據(jù)恢復(fù)案例

    oracle數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境: 一臺(tái)服務(wù)器,底層由12塊硬盤組成一組磁盤陣列,上層操作系統(tǒng)上運(yùn)行oracle數(shù)據(jù)庫。 oracle數(shù)據(jù)庫
    的頭像 發(fā)表于 10-12 14:00 ?701次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)-數(shù)據(jù)庫文件被刪除/分區(qū)被格式化的SQL SERVER數(shù)據(jù)恢復(fù)方案

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)-數(shù)據(jù)庫文件被刪除/分區(qū)被格式化的SQL SERVER數(shù)據(jù)恢復(fù)方案
    的頭像 發(fā)表于 09-21 14:34 ?721次閱讀