[MSSQL]還原資料庫 無還原的備份組可以選

當你發現 你正在還原資料庫的時候 發現選好要還原的.bak檔案 卻沒有還原的備份組可以選的時候

沒事的~別緊張!! 可能是因為你拿到的.bak和你這台機器要還原所放置的資料夾不同而造成的

那我們就來看看要怎麼做吧!

 

若你有這個狀況時,就要用以下的方式還原

這個方法你會發現跟還原MSSQL 「備份組包含現有的OOO資料庫以外的資料庫備份」的解法一樣

我的環境是MSSQL 2008 R2 SP2

首先先打開你的SQL Server Management Studio 鍵入以下的語法

USE [master]
GO
​
RESTORE DATABASE 還原的資料庫名稱 
FROM DISK='還原.bak的絕對路徑' 
WITH
MOVE '.bak原先的資料庫mdf的名稱' TO '目前建立test.mdf的路徑',
MOVE '.bak原先的資料庫ldf的名稱' TO '目前建立.ldf的路徑' ,
NoRecovery,
Replace
GO

已下是我的輸入範例圖

要記得

資料庫要選擇master喔 不然可是會像我一樣跳錯誤的


準備好了來執行吧!!
另外要是你出現這個訊息 
「備份組包含現有OOO資料庫以外的資料備份」
不要緊張 正是因為你的路徑和你的.bak的路徑不一樣所導致的

 

我們先把這個test的資料庫卸離吧

看到出現下列訊息就表示可以開始還原囉!!
已處理資料庫 'OOO' 的 105088 頁,檔案 1 上的檔案 'OOO'。
已處理資料庫 'OOO' 的 4 頁,檔案 1 上的檔案 'OOO_log'。
RESTORE DATABASE ... FILE=<name> 已於 85.208 秒內成功處理了 105092 頁 (9.635 MB/sec)。


下圖是我在做實際的測試機的圖哦...名字截掉了 不要覺得是圖壞掉了...

這個時候就可以再繼續做你的還原步驟囉!!

-----------------------------------------

有時在會走之前你就得跑

你不解決問題 就等問題解決你