匯入 BACPAC 檔案以建立新的使用者資料庫

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體

匯入資料層應用程式 (DAC) 檔案 (.bacpac 檔案),可在新的資料庫引擎執行個體上建立原始資料庫及其資料的複本,或將該檔案匯入 Azure SQL Database。 匯出-匯入作業可以進行合併以在執行個體之間移轉 DAC 或資料庫,或建立邏輯備份 (例如建立 SQL Database 中所部署資料庫的內部部署複本)。

開始之前

匯入程序會使用兩個階段來建立新的 DAC。

  1. 匯入會使用儲存在匯出檔案中的 DAC 定義,建立新的 DAC 及相關聯的資料庫,其方式相當於 DAC 部署從 DAC 封裝檔案中的定義建立新的 DAC。

  2. 匯入會從匯出檔案大量複製資料。

資料庫選項和設定

根據預設,匯入期間建立的資料庫將會擁有 CREATE DATABASE 陳述式中的所有預設值,但是資料庫定序和相容性層級會設定為 DAC 匯出檔案中所定義的值。 DAC 匯出檔案使用原始資料庫中的值。

某些資料庫選項 (例如 TRUSTWORTHY、DB_CHAINING 和 HONOR_BROKER_PRIORITY) 無法在匯入過程中調整。 實體屬性 (如檔案群組數目或檔案數目和大小) 無法在匯入過程中更改。 匯入完成之後,您可以使用 ALTER DATABASE 陳述式、SQL Server Management Studio 或 SQL Server PowerShell 來修改資料庫。 如需詳細資訊,請參閱 Databases

限制事項

DAC 可匯入到 SQL Database,或是執行 SQL Server 2005 (9.x) Service Pack 4 (SP4) 或更新版本的資料庫引擎執行個體。 如果您從更新版本匯出 DAC,則 DAC 可能會包含 SQL Server 2005 (9.x) 不支援的物件。 無法將這些 DAC 部署至 SQL Server 2005 (9.x) 執行個體。

必要條件

建議您不要匯入來源不明或來源不受信任的 DAC 匯出檔案。 這類檔案可能包含惡意程式碼,因此可能會執行非預期的 Transact-SQL 程式碼,或是修改結構描述而造成錯誤。 在您使用來源不明或來源不受信任的匯出檔案之前,請解除封裝 DAC 並檢查程式碼,例如預存程序和其他使用者定義的程式碼。 如需有關如何執行這些檢查的詳細資訊,請參閱< Validate a DAC Package>。

安全性

為了提高安全性,SQL Server 驗證登入會儲存在 DAC 匯出檔案中,而且沒有密碼。 當您匯入檔案之後,此登入會建立為停用的登入,而且會產生密碼。 若要啟用登入,請使用具有 ALTER ANY LOGIN 權限的登入進行登入,並使用 ALTER LOGIN 來啟用登入,然後指派可以傳達給使用者的新密碼。 Windows 驗證登入不需要這項處理,因為這類登入的密碼不是由 SQL Server 所管理。

權限

只有 系統管理員 (sysadmin)serveradmin 固定伺服器角色的成員,或是具有 dbcreator 固定伺服器角色且擁有 ALTER ANY LOGIN 權限的登入,才能匯入 DAC。 內建的 SQL Server 系統管理員帳戶 (名稱為 sa) 也可以匯入 DAC。 將具有登入的 DAC 匯入至 SQL Database,需要 loginmanager 或 serveradmin 角色的成員資格。 將不具有登入的 DAC 匯入至 SQL Database,需要 dbmanager 或 serveradmin 角色的成員資格。

使用匯入資料層應用程式精靈

若要啟動此精靈,請使用下列步驟:

  1. 連線至 SQL Server 的執行個體 (無論是內部部署或位在 SQL Database 中)。

  2. [物件總管][資料庫]上按一下滑鼠右鍵,然後選取 [匯入資料層應用程式] 功能表項目啟動精靈。

  3. 完成精靈對話方塊:

簡介頁面

此頁面描述的是資料層應用程式匯入精靈的步驟。

選項

  • 不要再顯示此頁面 - 選取此核取方塊,之後就不會再顯示 [簡介] 頁面。

  • 下一步 - 繼續進行 [匯入設定] 頁面。

  • 取消 - 取消作業並關閉精靈。

匯入設定頁面

您可以使用此頁面來指定要匯入之 .bacpac 檔案的位置。

  • 從本機磁碟匯入 - 選取 [瀏覽...] 巡覽本機電腦,或在提供的空間中指定路徑。 路徑名稱必須包含檔案名稱和 .bacpac 副檔名。

  • 從 Azure 匯入 - 從 Microsoft Azure 容器匯入 BACPAC 檔案。 您必須連線到 Microsoft Azure 容器,才能驗證此選項。 請注意,[從 Azure 匯入] 選項也會要求您指定暫存檔案的本機目錄。 暫存檔將建立在指定的位置,而且作業完成之後,將保留在該位置。

    瀏覽 Azure 時,將可以在單一帳戶中的容器之間切換。 您必須指定單一 .bacpac 檔案,才能繼續進行匯入作業。 您可以依照 [名稱]、[大小] 或 [修改日期] 排序資料行。

    若要繼續進行,請指定要匯入的 .bacpac 檔案,然後選取 [開啟]

資料庫設定頁面

您可以使用此頁面指定要建立之資料庫的詳細資料。

若為 SQL Server 的本機執行個體:

  • 新資料庫名稱 - 針對匯入的資料庫提供名稱。

  • 資料檔案路徑 - 提供資料檔案的本機目錄。 選取 [瀏覽...] 巡覽本機電腦,或在提供的空間中指定路徑。

  • 記錄檔路徑 - 提供記錄檔的本機目錄。 選取 [瀏覽...] 巡覽本機電腦,或在提供的空間中指定路徑。

若要繼續,請選取 [下一步]。

針對 Azure SQL Database:

驗證頁面

您可以使用此頁面檢閱造成此作業無法執行的任何問題。 若要繼續進行,請解決封鎖問題,然後選取 [重新執行驗證] 確定驗證成功。

若要繼續,請選取 [下一步]。

摘要頁面

您可以使用此頁面來檢閱作業的指定來源和目標設定。 若要使用指定的設定來完成匯入操作,請選取 [完成]。 若要取消匯入操作並結束精靈,請選取 [取消]

進度頁面

此頁面會顯示進度列,指出作業的狀態。 若要檢視詳細狀態,請選取 [檢視詳細資料] 選項。

若要繼續,請選取 [下一步]。

結果頁面

此頁面會報告匯入和建立資料庫操作成功或失敗,並顯示每個動作成功或失敗。 發生錯誤的所有動作在 [結果] 資料行中都會有一個連結。 選取連結來檢視該動作的錯誤報告。

選取 [關閉] 即可關閉精靈。

另請參閱