本文將介紹如何將 SQL Database 伺服器移轉至不同的訂用帳戶。
【情境說明】
假設您使用的 Windows Azure 訂用帳戶即將到期,需要將已經建立好的 SQL Database 伺服器移轉至非試用的訂用帳戶,或是您在測試用的訂用帳戶中建立 SQL Database,正式上線之後要移轉到 Production 環境所使用的訂用帳戶,應該怎麼做?
【實作步驟】
目前新版的 Windows Azure 管理入口網站尚無提供移動 SQL Database 伺服器的功能,因此您必須先切換回舊的管理入口網站(如下圖)。
於舊版的管理入口網站中點選【資料庫】來切換至 SQL Database 頁面,接著筆者示範將下圖 2 訂用帳戶的 SQL Database 伺服器移動至下圖 3 的訂用帳戶。
並利用下列一主控台應用程式來測試移轉伺服器時是否會發生斷線,程式碼如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Demo2
{class Program
{static void Main(string[] args){using (NorthwindEntities context = new NorthwindEntities()){int i = 0,count = context.Customers.Count();
while (i < count)
{Console.WriteLine(string.Format("{0},{1}", (i+1).ToString(), GetCustomerID(1, i)));i+=1;if (i == count) i = 0;
}}Console.ReadKey();}static string GetCustomerID(int TakeCount, int SkipCount){using (NorthwindEntities context = new NorthwindEntities()){return context.Customers.OrderBy(o => o.CustomerID).Skip(SkipCount).Take(TakeCount).First().CustomerID;
}}}}
筆者故意利用無限迴圈來不斷向原始 SQL Database 伺服器進行查詢,用來確認在移轉過程當中是否會斷線,執行結果如下:
接著點選您要移動的 SQL Database 伺服器,再按【移動伺服器】。
選擇您要將 SQL Database 伺服器移動到哪個訂用帳戶,然後按確定。
由下圖可以看到已經順利將 SQL Database 伺服器移轉到另一個訂用帳戶,且經過過程當中不會造成任何中斷,移轉後該 SQL Database 伺服器會在原本的區域及資料中心繼續提供服務,但帳單費用會算在目標訂用帳戶身上。
【參考資料】
- The Beauty of Moving SQL Azure Servers between Subscriptions
- Subscriptions - Data Sync Group Require to Move ?
- The Beauty of Moving SQL Azure Servers between Subscriptions