Sql Server 邏輯文件 '' 不是數據庫 '' 的一部分。請使用 RESTORE FILELISTONLY 來列出邏輯文件名。


當使用語句還原數據庫時,報如下錯誤:

 消息 3234,級別 16,狀態 2,第 29 行
邏輯文件 'LenborMealOrder_Base_2017' 不是數據庫 'Members_01' 的一部分。請使用 RESTORE FILELISTONLY 來列出邏輯文件名。
消息 3013,級別 16,狀態 1,第 29 行
RESTORE DATABASE 正在異常終止。

 

原因:此數據庫是用sql語句備份而來,引發的錯誤,原備份和還原的sql語句如下:

--備份
BACKUP DATABASE LeaRunFramework_Base_2016 TO DISK  = 'c:\DB_BACKUP\LenborMealOrder_Base_2017.bak'

--還原
RESTORE DATABASE Members_01 FROM DISK  = 'c:\DB_BACKUP\LenborMealOrder_Base_2017.bak' 
WITH MOVE 'LenborMealOrder_Base_2017' TO 'c:\DB_BACKUP\Members_01.mdf',
MOVE 'LenborMealOrder_Base_2017_log' TO 'c:\DB_BACKUP\Members_01.ldf'

 

解決方案:查找該數據的邏輯文件名,通過下面的語句即可查出,再修改還原語句中的名稱即可。

--獲得數據庫備份文件的信息 
restore filelistonly from disk='c:\DB_BACKUP\LenborMealOrder_Base_2017.bak'

 

修改后的還原語句如下:

--還原
RESTORE DATABASE LenborMealOrder_Base_2017 FROM DISK  = 'c:\DB_BACKUP\LenborMealOrder_Base.bak' 
WITH MOVE 'LeaRunFramework_Base_2016' TO 'c:\DB_BACKUP\LenborMealOrder_Base_2017.mdf',
MOVE 'LeaRunFramework_Base_2016_log' TO 'c:\DB_BACKUP\LenborMealOrder_Base_2017.ldf'


執行上述語句即成功還原數據庫,如下圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM