Sql-Server

我有一個來自 SQL Server v7 的數據庫備份 (.bak),如何將其轉換為載入到 v10?

  • June 27, 2018

一個客戶給了我一個來自 SQL Server v 7 數據庫的備份 (.bak)。我正在嘗試將其載入到不兼容的版本 10 中。是否有任何工具可以恢復或準備將舊版本備份恢復到版本 10?

編輯:根據請求,這是錯誤對話框中的文本

數據庫備份在執行版本 7.00.1063 的伺服器上。該版本與執行版本 10.00.1600 的此伺服器不兼容。在支持備份的伺服器上恢復數據庫,或使用與該伺服器兼容的備份。RESTORE DATABASE 異常終止。(Microsoft SQL Server,錯誤:3169)

您可以在 SQL 2005 實例上恢復 SQL 7 備份,然備份份/恢復或分離/附加到 SQL 2012 或 2014。“版本 10”是 SQL 2008,因此您可能不想停在那裡。您可以從 MSDN Subscriber Downloads 獲取舊版 SQL,或者 Express Edition 仍可供下載。

您正在嘗試將數據庫備份從 SQL server 7.0 sp4 恢復到不兼容的 SQL 2008。

在這裡,您可以使用以下方法之一將 SQL Server 7.0 版數據庫轉換為 SQL Server 2008:

  • 通過將數據庫附加到正在執行的實例,將 SQL Server 7.0 數據庫升級到 SQL Server 2000 或 SQL Server 2005。然後您可以將數據庫升級到 SQL Server 2008。通常,這是首選方法。您可以使用分離和附加升級數據庫。
  • 使用 SQL Server 導入和導出嚮導在 SQL Server 的多個實例之間複製數據。此嚮導適用於有提供程序的任何源和目標,但可能會出現數據轉換問題,具體取決於數據源。使用 SQL Server 導入和導出嚮導移動數據。

很少有第三方工具可以提供幫助:

第三方工具: Red Gate 是最受歡迎的工具之一,但還有很多其他工具,如 ApexSQL、Idera 等。

**生成腳本:**您始終可以使用 SSMS 編寫結構和數據的腳本,但您需要考慮執行順序。預設情況下,對像腳本的排序不正確,您必須處理依賴關係。如果數據庫很大並且有很多對象,這可能是一個問題。

引用自:https://dba.stackexchange.com/questions/192630