mdf文件損壞怎么修復,
數(shù)據(jù)庫恢復
為了兼容
sql server 2000,第四個參數(shù)是可選的,該參數(shù)用于指定一個分區(qū)號.如果不給定值或者給定0, 則顯示全部分區(qū)數(shù)據(jù)。
除主數(shù)據(jù)文件以外的所有其他數(shù)據(jù)文件都是次要數(shù)據(jù)文件,次數(shù)據(jù)文件一般只存儲用戶數(shù)據(jù)。某些數(shù)據(jù)庫可能不含有任何次要數(shù)據(jù)文件,而有些數(shù)據(jù)庫則含有多個次要數(shù)據(jù)文件。次要數(shù)據(jù)文件的推薦文件擴展名是 .ndf。
.SQL數(shù)據(jù)庫正在被寫入使用時發(fā)生了網(wǎng)絡(luò)故障,則可能會導致MDF文件的損壞。
SQL Server 數(shù)據(jù)庫具有三種類型的文件
首先,您需要在受損的SQL數(shù)據(jù)庫上運行DBCC CHECKDB,請執(zhí)行如下的命令:
?1 Data page 堆表和聚集索引的葉子節(jié)點數(shù)據(jù)
?3 Text mixed page A text page that holds small chunks of LOB values plus internal parts of text tree. These can be shared between LOB values in the same partition of an index or heap.
?13 boot page 記錄了關(guān)于數(shù)據(jù)庫的信息,僅存于每個數(shù)據(jù)庫的第9頁

2 次要數(shù)據(jù)文件
.從 SQL Server 2000 版或 7.0 版升級時。
在此之后,您就需要開始檢查索引ID了。
三 DBCC命令
.MDF文件所在存儲介質(zhì)的損壞。
主數(shù)據(jù)文件是數(shù)據(jù)庫的起點。除了存儲系統(tǒng)以及用戶數(shù)據(jù)以外,主數(shù)據(jù)文件還存儲了數(shù)據(jù)庫中的所有輔助數(shù)據(jù)文件以及重做日志文件的路徑、名稱、大小等信息。SQL Server通過讀取主數(shù)據(jù)文件得到其他數(shù)據(jù)文件及重做日志文件的信息,這個功能與Oracle控制文件相似。每個數(shù)據(jù)庫都有一個主數(shù)據(jù)文件。主數(shù)據(jù)文件的推薦文件擴展名是 .mdf。
?7 Sort page 排序時所用到的臨時頁,排序中間操作存儲數(shù)據(jù)用的。
.在某個SQL Server帳號下,所進行的任何修改或變更。
-1: 顯示全部IAM頁,數(shù)據(jù)頁, 索引頁 也包括 LOB 和row-overflow 數(shù)據(jù)頁。
因此在本文中,我們將和您討論修復受損SQL數(shù)據(jù)庫的最佳解決方法。不過在開始之前,讓我們先來了解一下SQL數(shù)據(jù)庫受損的背后原因。
?10 IAM page 有關(guān)每個分配單元中表或索引所使用的區(qū)的信息
0: 只顯示對象的in-row data頁和 in-row IAM 頁。
.元數(shù)據(jù)的損壞錯誤。
.導致MDF文件損壞的其他可能原因還包括:病毒攻擊、
硬盤故障、系統(tǒng)異常關(guān)機和突然斷電等。
情況1:如果索引ID>1,則立刻丟棄它、并重新創(chuàng)建。
.使用帶有 FOR ATTACH 或 FOR ATTACH_REBUILD_LOG 選項的 CREATE DATABASE 語句來附加數(shù)據(jù)庫時。
現(xiàn)在我們來看看79號類型為1的數(shù)據(jù)頁里存放的數(shù)據(jù),這個就要用到DBCC PAGE命令,它的語法如下:
另一種可能修復和復原受損SQL數(shù)據(jù)庫的方式是使用數(shù)據(jù)庫控制臺命令,例如:DBCC CHECKDB。該命令對于修復SQL Server數(shù)據(jù)庫中的輕度損壞問題是非常有效的。
.如果用戶將SQL數(shù)據(jù)庫存儲在一個壓縮的文件夾中,那么MDF文件就可能因此而被損壞。
第三個參數(shù)是一個非聚集索引ID或者 1, 0, 1, or 2. 值的含義:
.還原 master 數(shù)據(jù)庫時。
SQL Server 不強制使用 .mdf、.ndf 和 .ldf 文件擴展名,但使用它們有助于標識文件的各種類型和用途。
.用戶可能對數(shù)據(jù)進行錯誤地刪除。