Microsoft Azure SQL Database 自助式還原簡介

Microsoft Azure SQL Database 自助式還原簡介

說明

在前面兩篇(請見參考資料)筆者介紹了Build 2014才剛釋出的QL Database新功能,其中的新服務層次(New SQL Database Service Tiers)以及主動式異地備援(Active Geo-replication)。接下來將為您介紹另一個筆者等很久的功能─自助式還原(Self-Service Restore)

在這之前,若您要備份SQL Database上的資料庫,您並沒辦法像您在企業內部部署的SQL Server那樣的備份資料庫,在雲端上面的資料庫只能透過像是資料庫複製、SQL Database匯入匯出服務、SQLPackage.exe或協力廠商所提供的工具來達到備份資料庫的目的。而還原資料庫您可以利用SQL Database 匯入/匯出服務來匯入BACPAC檔案,不論是備份或還原,大部分的做法都脫離不了資料層應用程式(DAC)。

例如您可以在Microsoft Azure管理入口網站中將SQL Database匯出到儲存體(Storage)服務的Blob。

image

或是設定排程依照您所指定的頻率及時間來自動匯出資料庫。

image

有了存放在儲存體的BACPAC封裝檔案,您就可以用它來還原資料庫。

image

自助式還原(Self-Service Restore)

現在,還原SQL Database有更方便的作法,只要啟用了新服務層級的預覽功能,就可以在Microsoft Azure管理入口網站輕鬆地將SQL Database還原到特定的還原點,這個功能甚至可以幫助您還原不小心被刪除的SQLDatabase資料庫,在Microsoft Azure SQL Database 服務層次推陳出新一文中,筆者已經介紹過該如何還原被刪除的資料庫,用的是同樣的自助式還原功能。

image

SQL Database現在會自動每天做一次資料庫備份,並且每5分鐘做一次交易記錄備份,但自助式還原根據服務層次不同而有不同的備份保留週期。由下表可見,只要是新的服務層次,就連Basic的版本都適用自助式服務,只是差別在於備份保留週期不同,這牽涉到您可以還原到幾天前的還原點。

image

如下圖所示,筆者建立三個新服務層級的資料庫,點選Standard版本的資料庫(名稱為standard)接著按下方的管理,以開啟SQL Database的管理入口網站。

image

在SQL Database管理入口網站中按新增查詢後,執行下列的T-SQL建立測試資料表,並且寫入10筆資料。

create table t1 (c1 int primary key)
go

declare @i int = 1

while @i <= 10
begin
  insert into t1 values (@i)
  set @i+=1
end

go

select *
from t1
go

image

接著回到Microsoft Azure管理入口網站,點選standard資料庫後按下方的還原,假設您點選資料庫之後還原按鈕為反白,可能是尚未到達建立第一次還原點,因此無法讓您還原資料庫,可能需要等待一段時間。

image

在指定還原設定的視窗中您可以指定新資料庫的名稱,以及要還原到哪一個時間點,您可以自行在還原點中輸入您要還原的日期及時間,輸入完畢後按完成。

image

您就可以看到SQL Database正在根據您所選定的還原點來還原資料庫,還原資料庫的時間視您的資料庫大小而有所不同。

image

等到還原成功後,回到SQL Database的管理入口網站,查看之前建立的資料表t1是否存在,由下圖證明該資料表不存在於還原後的standard_2014-05-09T08:28Z資料庫。

image

結論

經過上一節簡單的示範,您應該可以了解自助式還原該怎麼操作,在此須提醒您,如果您還在使用即將於2015年4月終止服務的Web/Business版本的SQL Database,在企業內部所使用的資料庫備份還原策略必須重新規劃,因為無法直接將既有的做法直接搬到SQL Database上面使用,詳細作法可以參考Windows Azure SQL Database 備份和還原一文。而新的自助式還原在還原資料庫時,只能還原到同一台SQL Database伺服器,而且無法將資料庫還原成原來的資料庫名稱,這是在使用自助式還原需要注意的地方。

參考資料

Azure: 99.95% SQL Database SLA, 500 GB DB Size, Improved Performance Self-Service Restore, and Business Continuity

Azure SQL Database Backup and Restore

Microsoft Azure SQL Database 主動式異地備援讓您的資料庫更具高可用性

Microsoft Azure SQL Database 服務層次推陳出新

Windows Azure 七月份更新 - SQL Database 自動匯出功能

Windows Azure SQL Database 備份和還原 - 第一回合

Windows Azure SQL Database 備份和還原 - 第二回合

Windows Azure SQL Database 備份和還原 - 第三回合

Windows Azure SQL Database 的業務續航力