快速入門:利用 SSMS 還原資料庫至 Azure SQL 受控執行個體
適用於:Azure SQL 受控執行個體
在本快速入門,您將使用 SQL Server Management Studio (SSMS) 將資料庫從 Azure Blob 儲存體還原到 Azure SQL 受控執行個體。 本快速入門會使用 SAS 從公開可用的備份檔案還原 Wide World Importers 樣本資料庫。
注意
- 如需影片教學課程,請參閱 Azure SQL 受控執行個體 - 還原資料庫備份。
- 如需使用 Azure 資料庫移轉服務進行移轉的詳細資訊,請參閱教學課程:使用資料庫移轉服務來移轉 SQL Server 至 Azure SQL 受控執行個體。
- 如需各種移轉方法的詳細資訊,請參閱將 SQL Server 移轉至 Azure SQL 受控執行個體指南。
必要條件
本快速入門:
- 使用建立 SQL 受控執行個體快速入門的資源。
- 需要安裝最新版本 SSMS。
- 需要 SSMS 才能連線 SQL 受控執行個體。 請參閱下列快速入門,瞭解如何連線:
- 在 SQL 受控執行個體啟用公用端點。 本快速入門建議使用此方法。
- [從 Azure VM 連線到 SQL 受控執行個體]。
- 從內部部署設定點對站連線 SQL 受控執行個體。
注意
如需詳細資訊瞭解如何使用 Blob 儲存體 與共用存取簽章金鑰來備份及還原 SQL Server 資料庫的,請參閱 SQL Server 備份至網址。
使用還原精靈從備份檔案還原
在 SSMS,採取下列各節步驟,使用還原精靈還原 Wide World Importers 資料庫至 SQL 受控執行個體。 資料庫備份檔案會儲存在預先設定的 Blob 儲存體帳戶。
開啟還原精靈
開啟 SSMS 並連線您的 SQL 受控執行個體。
在 [物件總管],以滑鼠右鍵按一下 SQL 受控執行個體的 [資料庫] 資料夾,然後選取 [還原資料庫],即可開啟還原精靈。
選取備份來源
在還原精靈,選取省略號 (…) 以便選取要還原的備份組來源。
在 [選取備份裝置],選取 [新增]。 在 [備份媒體類型],[URL] 是唯一可用選項,因其是唯一支援來源類型。 選取 [確定]。
在 [選取備份檔案位置],從三個選項選擇,以便提供備份檔案位置相關資訊:
- 從 [Azure 儲存體容器] 清單選取預先註冊的儲存體容器 。
- 輸入新儲存體容器與共用存取簽章。 系統會為您註冊新 SQL 認證。
- 選取 [新增],從您的 Azure 訂用帳戶瀏覽更多儲存體容器。
如果您選取 [新增],請繼續進行下一節瀏覽 Azure 訂用帳戶儲存體容器。 如果您使用不同方法來提供備份檔案位置,請跳至還原資料庫。
若要從可公開存取的唯讀儲存體還原 Wide World Importers 樣本資料庫,請提供
https://mitutorials.blob.core.windows.net/examples/
值,同時針對 [共用存取簽章] 欄位提供任何值,例如SAS
。
瀏覽 Azure 訂用帳戶儲存體容器
注意
若要從可公開存取的唯讀 Azure Blob 儲存體還原 WideWorldImporters
樣本資料庫,不需要這些步驟,但若要從您自己的 Azure Blob 儲存體還原資料庫,則需要。
在 [連線 Microsoft 訂用帳戶],選取 [登入] 以便登入您的 Azure 訂用帳戶。
登入您的 Microsoft 帳戶,即可在 Azure 起始工作階段。
選取包含備份檔案的儲存體帳戶訂用帳戶。
選取包含備份檔案的儲存體帳戶。
選取包含備份檔案的 Blob 容器。
輸入共用存取原則的期間屆滿日,然後選取 [建立認證]。 系統會建立具正確權限的共用存取簽章。 選取 [確定]。
還原資料庫
現在您已選取儲存體容器,您應會看到 [在 Microsoft Azure 尋找備份檔案] 對話方塊。
展開左窗格的資料夾結構,顯示包含備份檔案的資料夾。 在右窗格,針對您要還原的備份組選取相關的所有備份檔案,然後選取 [確定]。 例如,下方螢幕擷取畫面顯示包含
WideWorldImporters
樣本資料庫的可公開存取唯讀 Blob 儲存體。SSMS 會驗證備份組。 此程序最多只需要幾秒鐘的時間。 持續時間取決於備份組大小。
如已驗證備份,您必須指定正在還原的資料庫名稱。 根據預設,[目的地] 下方 的 [資料庫] 方塊會包含備份組資料庫名稱。 若要變更名稱,請輸入 [資料庫] 的新名稱。 選取 [確定]。
還原程序即會開始。 持續時間取決於備份組大小。
當完成還原程序時,對話方塊會顯示已成功完成。 選取 [確定]。
在 [物件總管],選取 [重新整理],檢查已還原資料庫。
使用 T SQL 從備份檔案還原
作為還原精靈的替代方案,您可使用 T-SQL 陳述式來還原資料庫。 在 SSMS,採取下列步驟,使用 T-SQL 來還原 Wide World Importers 資料庫至 SQL 受控執行個體。 資料庫備份檔案會儲存在預先設定的 Blob 儲存體帳戶。
開啟 SSMS 並連線您的 SQL 受控執行個體。
在 [物件總管],以滑鼠右鍵按一下 SQL 受控執行個體,然後選取 [新增查詢],開啟新查詢視窗。
執行下列 T-SQL 陳述式,其會使用公開可用的預先設定儲存體容器和共用存取簽章金鑰,在您的 SQL 受控執行個體中建立認證。
重要
CREDENTIAL
必須符合容器路徑,開頭為https
,且不能包含尾端正斜線。IDENTITY
必須是SHARED ACCESS SIGNATURE
。SECRET
必須是共用存取簽章權杖,且不能包含前置?
。- 在此範例,由於儲存體帳戶已公開提供,因此會省略
SECRET
。 如果您使用未公開提供的儲存體帳戶,則必須提供共用存取簽章權杖。
CREATE CREDENTIAL [https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak] WITH IDENTITY = 'SHARED ACCESS SIGNATURE';
上個範例的認證路徑會提供單一檔案存取權。 您也可建立資料夾路徑的共用存取簽章權杖,例如:
CREATE CREDENTIAL [https://<your storage>.blob.core.windows.net/databases/backups/] WITH IDENTITY = 'SHARED ACCESS SIGNATURE' , SECRET = '<your shared access signature>'; -- omit the leading ?
若要檢查您的認證是否正確運作,請執行下列陳述式,其會使用 URL 來取得備份檔案清單。
RESTORE FILELISTONLY FROM URL = 'https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak';
執行下列陳述式來還原 Wide World Importers 資料庫範例。
RESTORE DATABASE [WideWorldImportersExample] FROM URL = 'https://mitutorials.blob.core.windows.net/examples/WideWorldImporters-Standard.bak';
提示
如果您收到
Error: 3201
或Operating system error 86(The specified network password is not correct.)
,可能是因為未正確建立 SAS 認證 (在先前步驟中建立)。DROP CREDENTIAL
並重新建立,檢閱認證名稱、身分識別和祕密。執行下列陳述式來追蹤還原程序狀態。
SELECT session_id as SPID, command, a.text AS Query, start_time, percent_complete , dateadd(second,estimated_completion_time/1000, getdate()) as estimated_completion_time FROM sys.dm_exec_requests r CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a WHERE r.command in ('BACKUP DATABASE','RESTORE DATABASE');
當完成還原程序時,請在 [物件總管] 檢視資料庫。 您可使用 sys.dm_operation_status 檢視來確認資料庫是否已還原。
注意
資料庫還原作業為非同步作業,且可重試。 如果連線失敗或逾時到期,您可能會在 SSMS 收到錯誤。 SQL 受控執行個體將會繼續嘗試在背景還原資料庫,而且您可以使用 sys.dm_exec_requests 和 sys.dm_operation_status 檢視追蹤還原流程進度。
在還原程序的部分階段,您會在系統檢視看到唯一識別碼,而非實際資料庫名稱。 若要瞭解 RESTORE
陳述式行為差異,請參閱 SQL Server 與 Azure SQL 受控執行個體 之間的 T-SQL 差異。
相關內容
- 如需針對備份至 URL 取得疑難排解資訊,請參閱 SQL Server 備份至 URL 最佳實務作法與疑難排解。
- 如需有關應用程式連線選項的概觀,請參閱將您的應用程式連線至 SQL 受控執行個體。
- 若要使用您的慣用工具或語言進行查詢,請參閱快速入門:Azure SQL 資料庫連線及查詢。