標籤:
SQL Server備份檔案bak,備份後還原出現錯誤3145,備份組中的Database Backup與現有的 ‘xxx‘ 資料庫不同。
解決辦法如下:
1,建立一個與現有資料庫重名的資料庫。
如果您不知道資料庫名稱,別著急,執行下面語句得到備份檔案的邏輯檔案名稱:
use master;--用此語句得到備份檔案的邏輯檔案名稱RESTORE FILELISTONLY FROM DISK = N‘E:\database\LocalDB\school.bak‘; --備份檔案的實體路徑
上面的SQL命令執行結果是查詢出備份檔案資訊,邏輯檔案名稱等。
--邏輯檔案名稱看LogicalName欄位,一般會有兩個檔案,如:
--olddb --主邏輯檔案名稱
--olddb_log --日誌邏輯檔案名稱
好了,根據邏輯檔案名稱(即原資料庫名稱)建立資料庫。
2,在查詢時段運行如下語句:
use master;RESTORE DATABASE Test --還原後資料庫的名稱FROM DISK = ‘E:\database\LocalDB\school.bak‘ --備份檔案的實體路徑WITH replace, MOVE N‘Test‘ TO N‘E:\database\LocalDB\Test.mdf‘, MOVE N‘Test_Log‘ TO N‘E:\database\LocalDB\Test_log.ldf‘; --還原後邏輯檔案和記錄檔的實體路徑
從語句上來看,和在圖形介面的操作是一樣的,但是結果卻是語句運行成功,圖形介面怎麼過不去。
還原語句執行結果如下:
已為資料庫 ‘dataname‘,檔案 ‘panydb‘ (位於檔案 1 上)處理了 808 頁。
已為資料庫 ‘dataname‘,檔案 ‘panydb_log‘ (位於檔案 1 上)處理了 1 頁。
正在將資料庫 ‘dataname‘ 從版本 539 轉換為目前的版本 611。
資料庫 ‘dataname‘ 正在從版本 539 升級到版本 551。
資料庫 ‘dataname‘ 正在從版本 551 升級到版本 552。
資料庫 ‘dataname‘ 正在從版本 552 升級到版本 553。
資料庫 ‘dataname‘ 正在從版本 553 升級到版本 554。
資料庫 ‘dataname‘ 正在從版本 554 升級到版本 589。
資料庫 ‘dataname‘ 正在從版本 589 升級到版本 590。
資料庫 ‘dataname‘ 正在從版本 590 升級到版本 593。
資料庫 ‘dataname‘ 正在從版本 593 升級到版本 597。
資料庫 ‘dataname‘ 正在從版本 597 升級到版本 604。
資料庫 ‘dataname‘ 正在從版本 604 升級到版本 605。
資料庫 ‘dataname‘ 正在從版本 605 升級到版本 606。
資料庫 ‘dataname‘ 正在從版本 606 升級到版本 607。
資料庫 ‘dataname‘ 正在從版本 607 升級到版本 608。
資料庫 ‘dataname‘ 正在從版本 608 升級到版本 609。
資料庫 ‘dataname‘ 正在從版本 609 升級到版本 610。
資料庫 ‘dataname‘ 正在從版本 610 升級到版本 611。
RESTORE DATABASE 成功處理了 809 頁,花費 1.437 秒(4.606 MB/秒)。
3,點擊還原後的資料庫,右鍵“重新整理”,果然還原成功。
ok,大功告成。
Sql Server 備份還原失敗錯誤ERROR:3145(備份組中的Database Backup與現有的資料庫不同)及解決辦法