mssql server 2005還原數據庫bak文件,網站使用虛擬主機建站會經常遇到,一般情況下,主機商有在線的管理程序,但有時候沒有的話,就需要本地還原備份sql數據庫了。這種情況mssql server 2008也同樣會出現,有時候會出現“備份集中的數據庫備份與現有的xx數據庫不同”的錯誤提示,本文也一並把解決方法說道說道。
第一部分,mssql server 2005(2008)還原數據庫bak文件。
一、連接上數據庫,右鍵數據庫,選擇新建數據庫,輸入你要還原數據庫的名稱。


二、確定后右鍵新建的數據庫,如圖操作。


三、點添加后,找到bak存放路徑,文件后綴是bak的才可以選中

四、圖中紅框處一定要勾選

五、點擊確定即可還原,成功后會提示還原成功,希望可以幫到你

第二部分,mssql server 2005(2008)還原數據庫bak文件提示“備份集中的數據庫備份與現有的xx數據庫不同”錯誤解決方法。
在還原數據庫的時候報錯:備份集中的數據庫備份與現有的數據庫不同SQLServer2005或者SQLServerExpress數據庫在還原的時候出錯。錯誤具體信息為:備份集中的數據庫備份與現有“XXXX”數據庫不同,其實,提示已經說明了問題的核心。解決防范如下。
SQL Server 2005/SQL Server 2008/Express方法/步驟
1
第一次嘗試:新建了數據庫XXXX,數據庫文件放在D:\DB\XXXX目錄下,選中該數據庫右鍵-任務-還原-文件和文件組,在源設備中找到備份文件XXXX.bak,目標數據庫選中A,還原路徑找到E:\DB\XXXX目錄下數據庫文件(剛才所建數據庫A的數據庫文件),選擇覆蓋原數據庫,點還原后出現錯誤:備份集中的數據庫備份與現有“XXXX”數據庫不同
2
第二次嘗試:刪除了數據庫A,直接在根節點的數據庫右鍵-還原數據庫,出來對話框中先找到備份文件XXXX.bak,此時目標數據庫下拉框中自動出現跟備份文件中數據庫名一樣的數據庫名稱,選擇它,在選項的將數據庫文件還原為中,把還原路徑改為自己需要的D:\DB\XXXX,文件名保留系統自帶的,點還原后,成功還原。
3
總結:第一次還原出錯的原因可能是,新建的數據庫文件為XXXX.MDF和XXXX_Log.LDF,而還原的數據庫文件為XXXX_Data.MDF和XXXX_Log.LDF,文件名不同,導致還原出錯,第二次因為沒有數據庫文件,所以用的是還原的數據庫文件名,因而能還原成功。
還有另外一種辦法,sql server 2008,sql server 2005“備份集中的數據庫備份與現有的xx數據庫不同”解決方法
因為是在另一台電腦對同名數據庫做的備份,用常規方法還原,提示不是相同數據庫,不讓還原,在網上找到下面的方法解決了:
一、右擊系統數據庫master,新建查詢
執行以下SQL代碼:
RESTORE DATABASE xxx FROM DISK = 'E:\DB\xxx.bak' --bak文件路徑 with replace, MOVE 'xxx' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.mdf', --mdf文件路徑 MOVE 'xxx_log' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.ldf' --ldf文件路徑
注釋:xxx是你需要還原的數據庫名稱,xxx.bak是你需要還原的備份文件。
二、上面方法執行成功后,只有部分的表結構已經還原,而且表中沒有數據,這時就可以用系統默認的方法再用xxx.bak文件還原一次數據庫就大功告成了,必須要選中覆蓋還原哦。
