用友
數(shù)據(jù)庫損壞怎么修復(fù)?
用友數(shù)據(jù)庫賬套損壞,數(shù)據(jù)庫無法附加怎么修復(fù)?
我們可以用幾種手動(dòng)的方法來修復(fù)受損的SQL數(shù)據(jù)庫,但是這些手動(dòng)解決方法是無法保證數(shù)據(jù)庫能被完全恢復(fù)的。
?7 Sort page 排序時(shí)所用到的臨時(shí)頁,排序中間操作存儲(chǔ)數(shù)據(jù)用的。

為了兼容
sql server 2000,第四個(gè)參數(shù)是可選的,該參數(shù)用于指定一個(gè)分區(qū)號(hào).如果不給定值或者給定0, 則顯示全部分區(qū)數(shù)據(jù)。
.使用帶有 FOR ATTACH 或 FOR ATTACH_REBUILD_LOG 選項(xiàng)的 CREATE DATABASE 語句來附加數(shù)據(jù)庫時(shí)。
0:默認(rèn)值,輸出緩沖區(qū)的標(biāo)題和頁面標(biāo)題
printopt 可選的輸出選項(xiàng);選用其中一個(gè)值:
.元數(shù)據(jù)的損壞錯(cuò)誤。
除此之外,用戶還可能在訪問受損的SQL數(shù)據(jù)庫時(shí),遇到其他類型的錯(cuò)誤提示。可見,數(shù)據(jù)庫管理員應(yīng)當(dāng)立即采取措施,以防止任何類型的
數(shù)據(jù)丟失。
.磁盤驅(qū)動(dòng)器受損。
SQL數(shù)據(jù)庫受損的背后原因
?? 在 SQL Server 中,數(shù)據(jù)庫中所有文件的位置都記錄在數(shù)據(jù)庫的主文件和 master 數(shù)據(jù)庫中。大多數(shù)情況下,SQL Server 數(shù)據(jù)庫引擎使用 master 數(shù)據(jù)庫中的文件位置信息。
filenum 包含頁面的文件編號(hào)
.某個(gè)用戶可能對數(shù)據(jù)進(jìn)行錯(cuò)誤地刪除。
情況1:如果索引ID>1,則立刻丟棄它、并重新創(chuàng)建。
.MDF文件所在存儲(chǔ)介質(zhì)的損壞。
情況2:如果索引ID為0或1,則使用適當(dāng)?shù)男迯?fù)選項(xiàng),如:repair_rebuild、repair_fast或repair_allow_data_loss,來再次運(yùn)行DBCC CHECKDB。
0: 只顯示對象的in-row data頁和 in-row IAM 頁。
1:輸出緩沖區(qū)的標(biāo)題、頁面標(biāo)題(分別輸出每一行),以及行偏移量表
?8 GAM page 全局分配映射(Global Allocation Map,GAM)頁面 這些頁面記錄了哪些區(qū)已經(jīng)被分配并用作何種用途。
注意:您也可以為DBCC CHECKDB定義諸如no_infomsgs和infomsgs的選項(xiàng)參數(shù)。
SQL Server 數(shù)據(jù)庫具有三種類型的文件
?15 file header page 記錄了關(guān)于數(shù)據(jù)庫文件的信息,存于每個(gè)數(shù)據(jù)庫文件的第0頁
在此之后,您就需要開始檢查索引ID了。
要想看到這些輸出的結(jié)果,還需要設(shè)置DBCC TRACEON(3604)
?13 boot page 記錄了關(guān)于數(shù)據(jù)庫的信息,僅存于每個(gè)數(shù)據(jù)庫的第9頁
第二個(gè)參數(shù)是數(shù)據(jù)庫中的對象名或?qū)ο驣D,對象可以是表或者索引視圖。
.導(dǎo)致MDF文件損壞的其他可能原因還包括:病毒攻擊、硬盤故障、系統(tǒng)異常關(guān)機(jī)和突然斷電等。
?4 Text tree page A text page that holds large chunks of LOB values from a single column value.
?17 BCM page 有關(guān)每個(gè)分配單元中自最后一條 BACKUP LOG 語句之后的大容量操作所修改的區(qū)的信息
DBCC Page ({dbid|dbname},filenum,pagenum[,printopt])