新聞中心
微軟的SQL Server 數(shù)據(jù)庫最常用的有兩種類型的文件:

創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站建設(shè)、成都做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務梁山,十載網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792
1、主要數(shù)據(jù)文件,文件后綴一般是.MDF;
2、事務日志文件,文件后綴一般是.LDF。
用戶數(shù)據(jù)表、視圖、存儲過程等等數(shù)據(jù),都是存放在MDF文件里,LDF文件是存放MS SQL Server操作過程中的日志記錄。
MDF文件必讀附加到MS SQL Server數(shù)據(jù)庫環(huán)境后,才能正常讀取其中的數(shù)據(jù)。當由于某種原因數(shù)據(jù)庫附加不上,MDF數(shù)據(jù)庫文件的內(nèi)容就沒辦法讀取,數(shù)據(jù)庫修復的方法有:
1、 使用MS SQL Server環(huán)境進行修復,先以修復模式掛載數(shù)據(jù)庫,然后以單用戶模式對數(shù)據(jù)庫進行修復,運氣好的話,數(shù)據(jù)庫就能修復成功。
2、 用第三方工具直接讀取MDF數(shù)據(jù)文件,把數(shù)據(jù)表、視圖、存儲過程等提取出來,然后還原到新建的數(shù)據(jù)庫中。
D-Recovey For MS SQL Server達思sql數(shù)據(jù)庫修復軟件就是能直接讀取MDF數(shù)據(jù)文件的工具,即便用上述第一種方法沒有恢復成功的情況下,D-Recovey For MS SQL Server有時候也能讀取出MDF數(shù)據(jù)文件中的數(shù)據(jù)。下面我們來介紹D-Recovey For MS SQL Server的一些數(shù)據(jù)恢復功能。
我們先來看一下數(shù)據(jù)庫損壞的幾種情況:
1、 由于斷電等原因?qū)е聰?shù)據(jù)庫質(zhì)疑,這是一種較為常見的MS SQL Server數(shù)據(jù)庫損壞的情況,這種情況在上述第一種修復方法往往能修復好,但也有修不好的可能。
圖一:sql數(shù)據(jù)庫置疑錯誤很常見
2、 數(shù)據(jù)庫附加錯誤,最常見的如下圖:
圖二:sql數(shù)據(jù)庫823錯誤是主要的數(shù)據(jù)庫附加錯誤
3、 數(shù)據(jù)表查詢錯誤,如下圖:
圖三:數(shù)據(jù)表查詢報錯也很常見
數(shù)據(jù)庫報823錯誤通常是數(shù)據(jù)頁面校驗沒有通過,一般是由于壞道、突然斷電、數(shù)據(jù)覆蓋等原因引起的,有些情況下數(shù)據(jù)庫能附加,但是查詢某個表的時候報823錯誤,用MS SQL Server數(shù)據(jù)庫環(huán)境也修復不好。D-Recovey For MS SQL Server對于823錯誤處理效果不錯。
D-Recovey For MS SQL Server具備如下恢復功能:
1、能恢復由于斷電及別的原因引起的數(shù)據(jù)庫狀態(tài)變成質(zhì)疑而損壞的MDF文件
2、能恢復磁盤壞道及別的原因引起的數(shù)據(jù)庫無法正常附加而損壞的MDF文件
3、能恢復數(shù)據(jù)庫狀態(tài)正常而某些數(shù)據(jù)表查詢出錯造成的數(shù)據(jù)丟失情況的數(shù)據(jù)
4、能恢復通過MDF文件碎片組合(手工提取)而成的MDF文件中的數(shù)據(jù)
圖四:達思sql數(shù)據(jù)庫修復軟件盒裝版
D-Recovey For MS SQL Server軟件界面如下
圖五:達思sql數(shù)據(jù)庫修復軟件界面
D-Recovey For MS SQL Server的界面設(shè)計按照MS SQL Server企業(yè)管理器使用習慣來進行,左邊窗口顯示的是數(shù)數(shù)據(jù)表、視圖、存儲過程、用戶自定義函數(shù)、用戶自定義數(shù)據(jù)類型,點擊數(shù)據(jù)表,就能看到所有數(shù)據(jù)表名稱,數(shù)據(jù)表“+”號展開后,可以看到數(shù)據(jù)表字段信息等,點擊某個表,右邊窗口就顯示該數(shù)據(jù)表的數(shù)據(jù)記錄信息,如果某個數(shù)據(jù)表記錄比較多,可以通過下一頁、上一頁進行翻頁顯示。
細心觀察的朋友會發(fā)現(xiàn),每一頁顯示的記錄條數(shù)可能不一樣,這是程序設(shè)計的時候,按照一定的數(shù)據(jù)頁面來顯示的,比如沒個顯示頁讀取64個數(shù)據(jù)頁面(data page),在MDF文件中,每個data page的數(shù)據(jù)記錄數(shù)量不一定相等,所以顯示出來的記錄數(shù)量就會有差異。
D-Recovey For MS SQL Server數(shù)據(jù)庫恢復步驟:
1、打開MDF文件,選擇數(shù)據(jù)庫版本
圖六:選擇sql數(shù)據(jù)庫版本
2、打開完以后,左邊顯示數(shù)據(jù)表、視圖、存儲過程、用戶自定義函數(shù)、用戶自定義數(shù)據(jù)類型,點擊“+”可展開,點擊左邊某個表,右邊列出表記錄。
圖七:輕松展開損壞的sql數(shù)據(jù)庫文件
把數(shù)據(jù)恢復成腳本文件
數(shù)據(jù)恢復功能中的導出所有表結(jié)構(gòu)、導出選中表結(jié)構(gòu)是把數(shù)據(jù)庫的表結(jié)構(gòu)導出來,保存成.sql文件,這是一個包含sql語句格式的文本文件,用戶可以在MS SQL Server中運行這些sql語句文件,就能創(chuàng)建出數(shù)據(jù)表。
導出所有表數(shù)據(jù)和導出選中表數(shù)據(jù)是把表數(shù)據(jù)導出來,保存成sql語句文件,用戶可以把這些sql語句文件在MS SQL Server查詢分析器中運行,把相應表中的數(shù)據(jù)恢復到MS SQL Server中。值得注意的是,數(shù)據(jù)庫全部保存成sql文件以后,程序生成一個commit.bat批處理文件,運行這個commit.bat批處理文件,填寫數(shù)據(jù)要導入的目標數(shù)據(jù)庫用戶名和密碼以及數(shù)據(jù)庫服務器IP地址和目標數(shù)據(jù)庫名稱,然后批處理文件會自動把所有sql語句文件導入到目標數(shù)據(jù)庫中。
把數(shù)據(jù)恢復到新的數(shù)據(jù)庫中
數(shù)據(jù)庫恢復中最實用的功能就是把看到的數(shù)據(jù)表中的數(shù)據(jù)直接導入MS SQL Server新建的數(shù)據(jù)庫中。加入我們要恢復一個a.mdf文件,我們要把a.mdf文件中的所有數(shù)據(jù)恢復到數(shù)據(jù)庫服務器127.0.0.1上的DSTtest數(shù)據(jù)庫中,就要點擊D-Recovey For MS SQL Server的“把所有表導入數(shù)據(jù)庫”這個按鈕,就彈出如下對話框,我們把數(shù)據(jù)庫服務器IP地址、數(shù)據(jù)庫名稱、連接數(shù)據(jù)庫的用戶名和密碼,然后點擊確定,a.mdf文件中的數(shù)據(jù)就自動導入到DSTtest中。
圖八:達思sql數(shù)據(jù)庫修復軟件可以吧數(shù)據(jù)恢復到數(shù)據(jù)庫中
D-Recovey For MS SQL Server還具備檢測MDF數(shù)據(jù)文件數(shù)據(jù)頁面是否正確的功能。
點擊“檢查數(shù)據(jù)庫文件”按鈕,出來如下對話框,我們先擇一個mdf文件,開始檢測,在檢測過程中,我們注意“null page”(即空數(shù)據(jù)頁)和“err page”(即錯誤數(shù)據(jù)頁)數(shù)量的變化,如果錯誤數(shù)據(jù)頁特別多,那這個mdf文件損壞就比較嚴重。
圖九:達思sql數(shù)據(jù)庫修復軟件具有數(shù)據(jù)庫檢測功能
MS SQL Server數(shù)據(jù)庫另外一種常見的恢復方法是通過提取MDF數(shù)據(jù)頁面,然后整合拼接成一個MDF數(shù)據(jù)文件,通過這種方式恢復一般很少能附加到數(shù)據(jù)庫中,可以通過D-Recovey For MS SQL Server把正常的數(shù)據(jù)記錄提取出來。
總結(jié):
1、D-Recovey For MS SQL Server總體設(shè)計思想是直接讀取MDF文件中正常的數(shù)據(jù)記錄,并把這些數(shù)據(jù)保存成sql語句或者直接導入一個新的數(shù)據(jù)庫中,它不是設(shè)計成直接修復原始MDF文件使MDF文件能正常附加到數(shù)據(jù)庫中。當數(shù)據(jù)庫管理員使用任何方法都不能把數(shù)據(jù)庫修復使它正常附加的情況下,D-Recovey For MS SQL Server就顯得格外有用。
2、數(shù)據(jù)能夠成功恢復的基礎(chǔ)是MDF文件關(guān)鍵系統(tǒng)表沒有被破壞,數(shù)據(jù)記錄內(nèi)容確實存在于MDF文件之中,如果數(shù)據(jù)記錄內(nèi)容被破壞被覆蓋,數(shù)據(jù)恢復將不能正確恢復原來的信息。
轉(zhuǎn)載地址:http://www.d-recovery.org
文章名稱:達思:SQLServer數(shù)據(jù)庫修復高手之路
文章地址:http://m.5511xx.com/article/cosehoo.html


咨詢
建站咨詢
