前言

比起過去熟悉的的 SQL Sever,Azure SQL Databse 在執行備份還原上會有些不同。在這篇文章,我們將簡單介紹 Azure SQL Database 匯出封存還原機制,並在 Azure Portal 上實作手動執行匯出還原複製異地複寫功能。本篇文章若有錯誤或任何建議,請各位先進不吝提出。

Azure SQL Database 匯出的 bacpac 檔案會存放在 Azure Blob 儲存體內
Azure SQL Database 匯出的 bacpac 檔案會存放在 Azure Blob 儲存體內


介紹

資料庫匯出與封存 (Export and Archive) 當您需要對 Azure SQL Server 資料庫建立封存時,可以將資料庫架構與資料匯出至 BACPAC 檔案,其文件附檔名為 .bacpac,被包裝至 zip檔案內。BACPAC 檔案可以被儲存在本地或 Azure Blob 儲存體內,後續可以匯入 Azure SQL Database 或 本地 SQL Server。下列是匯出資料庫時需要注意的事項:
  1. 確保匯出期間沒有寫入活動
  2. 封存到 Azure Blob 儲存體的 BACPAC 檔案,最大容量限制為 200GB
  3. 不支援透過 BACPAC 檔案方式,封存至 Azure 進階 (premium)儲存體。
  4. 若匯出過程超過 20 小時,有可能會取消。 


自助還原 (Self-Service Restore)
SQL Database 會自動建立資料庫備分,下列為注意事項:
  1. 備份類型: SQL Server 技術用於完整、差異 與 transaction log 備份,若您不熟悉這些類型備份,請花一些時間閱讀相關技術文章。
  2. 備份儲存體:SQL Database 提供 200% 最大配置資料庫儲存體作為備份儲存。舉例來說,如果您標準資料庫 instance 配置大小為 250 GB,則您有 500 GB 的備份儲存空間。理所當然,您可以額外購買備份儲存體。
  3. 備份排程:建立資料庫後立即排程第一次完整備份。完成後,將背景執行管理,自動排程進一步的完整備份。所有資料庫備份的確切時間由 SQL Database 確定 (因為平衡整個系統負載)。
  4. 備份保留:每個 SQL Database 都有一個依據資料庫服務層級的保留期。舉例來說,基本服務層可以保存 7 天;標準與進階服務層保存 35 天。若您的應用程式需要備份保留較長時間,您可以透過各個資料庫設定長期備份保留策略,以延長保存時間。


匯出、還原與複製操作
您能在 概觀 → 上方上方工具列找到相關功能

1. 匯出 Azure SQL Database
Step 1. 概觀 → 匯出 → 填寫匯出資料庫相關資訊

Step 2. 送出後,即送出備份工作。


Step 3. 完成後,可以在儲存體內找到 bacpac 檔案


2. 還原 Azure SQL Database
概觀 → 還原 → 填寫還原資料庫相關資訊。送出後,即開始還原工作。


3. 複製 Azure SQL Database
Step 1. 概觀 → 還原 → 填寫複製資料庫相關資訊

Step 2. 點選確定,即開始複製資料庫

Step 3. 複製完成,可以看見複製完成的資料庫


4. 異地複寫
異地複寫允許您在相同或不同的ˊ(區域)中配置最多四個可讀的輔助資料庫。 在資料中心中斷或無法連接到主資料庫的情況下,輔助資料庫可用於查詢和故障轉移。您可以在 Azure SQL Database 功能列表上,概觀 → 異地複寫 → 選擇地區並填寫相關資訊,即可做到異地複寫功能,相當方便。

參考資料