適用於:Linux 上的 SQL Server
本文說明如何使用 SQL Server Management Studio(SSMS)或 SqlPackage 在 Linux 上的 Linux 上的 SQL Server 匯出與匯入資料庫。 SSMS 是 Windows 應用程式。 SqlPackage 可在 Windows、macOS 及 Linux 上運行。 若要使用 SSMS,您需要一台可連線到在 Linux 上執行的遠端 SQL Server 執行個體的 Windows 電腦。
您應一律安裝並使用最新版本的 SSMS,如使用 Windows 上的 SQL Server Management Studio 來管理 Linux 上的 SQL Server 中所述。
關於如何將資料庫從一個 SQL Server 實例遷移到另一個實例,請參見使用備份和還原將 SQL Server 資料庫從 Windows 遷移到 Linux。
使用 SSMS 匯出資料庫
啟動 SSMS 時,請在Windows搜尋框輸入 Microsoft SQL Server Management Studio,然後選擇桌面應用程式。
在 物件總管 中連接到你的來源資料庫。 原始資料庫可托管於 Linux、Windows 上的 Microsoft SQL Server,或是本地端或雲端的 Docker 容器中。 也可以是在 Azure SQL Database 或 Azure Synapse Analytics 裡。
在 物件總管 中右鍵點擊來源資料庫,指向任務,然後選擇匯出資料層應用程式...
在匯出精靈中,選擇
Next ,然後在Settings 分頁中設定匯出,將 BACPAC 檔案儲存到本地磁碟位置或 Azure blob。 根據預設,會匯出資料庫中的所有物件。 選擇 進階 標籤,選擇你想匯出的資料庫物件。
選取 [下一步],然後選取 [完成]。
.bacpac 檔案已在您選擇的位置成功建立,且您已準備好將其匯入目標資料庫。
使用 SSMS 匯入資料庫
啟動 SSMS 時,請在Windows搜尋框輸入 Microsoft SQL Server Management Studio,然後選擇桌面應用程式。
在 物件總管 中連接到你的目標伺服器。 目標可以是運行於 Linux、Windows 或 Docker 容器中的 Microsoft SQL Server,無論是本地端還是雲端。 也可以是 Azure SQL Database 或 Azure Synapse Analytics。
在物件總管中右鍵點擊 Databases 資料夾,選擇 Import Data-tier Application...
若要在目標伺服器中建立資料庫,請從您的本機磁碟指定 BACPAC 檔案,或選取您上傳 BACPAC 檔案的 Azure 儲存體帳戶和容器。
為資料庫提供新資料庫名稱。 如果您要在 Azure SQL Database 上匯入資料庫,請設定 Microsoft Azure SQL Database 的版本 (服務層級)、資料庫大小上限以及服務目標 (效能等級)。
選取 [下一步],然後選取 [完成],以將 BACPAC 檔案匯入至目標伺服器中的新資料庫。
.bacpac 檔案隨即匯入,以在您指定的目標伺服器中建立新資料庫。
SqlPackage 命令行公用程式
你也可以使用 SqlPackage 命令列工具來匯出和匯入 BACPAC 檔案。
下列範例命令會匯出 BACPAC 檔案:
SqlPackage /a:Export /ssn:tcp:<your_server> /sdn:<your_database> /su:<username> /sp:<password> /tf:<path_to_bacpac>
使用下列命令,從 .bacpac 檔案匯入資料庫結構描述和使用者資料:
SqlPackage /a:Import /tsn:tcp:<your_server> /tdn:<your_database> /tu:<username> /tp:<password> /sf:<path_to_bacpac>