系統公告
熱情贊助
yam揪便宜
yam今日我最殺
個人檔案
個人圖檔
ID:iamshiao
暱稱:iam$hiao
生日:1988/12/31
地區:高雄市

文章分類
音樂
RSS 訂閱
RSS2
ATOM
其它資訊
本部落所刊登之內容,皆由作者個人所提供,不代表 yam天空部落 本身立場。
POWERED BY
POWERED BY
會員登入免費註冊
December 7, 2008
將伺服器的.bak紀錄檔備份回家後,利用還原機制,還原為.mdf資料庫檔的方法。


實例:

要還原的資料庫叫NPUST.mdf

欲還原的bak檔為NPUST_backup_200812060300.bak
存在C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\NPUST_backup_200812060300.bak

設要建立一個新的資料庫叫NPUST或用從伺服器備份來的NPUST舊檔
要用最新的bak檔去覆蓋。一般我們會直接在 資料庫右鍵>工作>還原>資料庫
然後在來源裝置選擇備份媒體>檔案 然後去瀏覽加入.bak檔
可是使用伺服器的bak檔做還原時會出現

System.Data.SqlClient.SqlError: 備份組包含現有的 'NPUST' 資料庫以外的資料庫備份。 (Microsoft.SqlServer.Express.Smo)



System.Data.SqlClient.SqlError: 資料庫 "NPUST" 的記錄結尾尚未備份。若您不想遺失其中的內容,請使用 BACKUP LOG WITH NORECOVERY 備份記錄。亦可使用 RESTORE 陳述式的 WITH REPLACE 或 WITH STOPAT 子句,覆寫記錄的內容。 (Microsoft.SqlServer.Express.Smo)

的錯誤訊息。

解決方法


鍵入的程式碼
restore DATABASE NPUST
from disk='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\NPUST_backup_200812060300.bak'
with
move 'NPUST' to 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\NPUST.mdf',
move 'NPUST_Log' to 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\NPUST_log.ldf'
,NoRecovery
,Replace
go

※程式碼內的檔名跟路徑換成自己需要的。


有顯示已處理的訊息後


像圖一樣,再做一次正常還原手續...





這樣就可以正確的完成還原手續的。

原因我也不是很了解,預知詳情請鍵入我參考的網站
引用 (你可以針對此文寫一篇屬於自己的blog/想法,並給作者一個通告)
引用
留言 (5筆)
1.
我是一個初學者,
剛好碰到這個問題找到您的Blog,
照您說的作真的可以解決,
非常感謝,
另外請問若我要了解原因的話,
您說的參考網址在哪兒可以連 Q_Q?
謝謝您哦~
 
小路 於 May 11, 2009 留言 |
2.
參考網址連結我點到了,
原來是最後兩個字,
灰色的沒看清楚 QQ~~~

 
小路 於 May 11, 2009 留言 |
3.
感謝
感謝
感謝
感謝
感謝

 
yuan52d 於 Aug 12, 2009 留言 |
4.
想要了解的更詳細可以多花時間參考 MSSQL 線上說明
很多問題都可以在裡面找到解決方法
而且是中文的資料

 
bestlong 於 Dec 8, 2009 留言 |
5.
謝謝你的分享,解決了我的問題
 
喬媽咪 於 Oct 21, 2010 留言 |
發表你的留言 (字數限制 最多 2000 個中文字)
私密留言:
Name:




內容:
檢視行動版網頁  |  檢視正常版網頁