2015-06-29 55 views
4

我正在使用V11 SQL Azure。如何從V11升級到V12 SQL Azure?

在這個階段,我不想升級現有的包含我所有當前質量檢查和生產數據庫的SQL服務器。

從邏輯上講,爲V12創建新的SQL Server安裝程序似乎更安全,然後以某種方式將V11數據庫實例從V11 Sql Server複製/遷移到新的V12 SQL Server(即QA DB)。我知道:V12 Upgrade article

這是可能的和如何?

回答

6

最簡單的方法是創建一個新的V12服務器,然後導出數據庫並將它們導入新服務器。

有幾種方法可以使用門戶(https://manage.windowsazure.com)並單擊數據庫並單擊頂部的導出按鈕,這會將數據庫導出到Azure存儲。要導入,請單擊新建,數據服務,導入,然後從您的存儲帳戶中選擇bacpac文件並選擇新的V12服務器以將其導入到。

您的其他選擇是下載SSMS(https://msdn.microsoft.com/en-us/library/mt238290.aspx)並登錄到兩臺服務器。右鍵單擊要導出的數據庫,然後轉到「任務」 - >「導出數據層應用程序」。選擇本地存儲以在本地下載數據庫。要導入,請右鍵單擊V12服務器上的數據庫文件夾,然後轉到任務 - >導入數據層應用程序。

在這一點上,這是從V11升級到V12而不直接升級服務器的唯一直接方式。

+0

謝謝你這樣想,儘可能多..... – SamJolly

+0

這兩個答案都非常有幫助,但是需要選擇一個,所以跟這個一樣,我總是很感謝來自Azure團隊的直接建議,所以非常感謝。 – SamJolly

2

我們需要爲約150個數據庫的生產部署做同樣的事情。我們的策略是類似的:在我們評估每個數據庫的適當層後,我們已經創建了一個單獨的V12遷移實例。但是,我們選擇在遷移之前的幾周內將數據庫升級到V11實例中的新層,以驗證它們的大小是否合適。

就遷移而言,我不知道任何自動或在線的方式來做到這一點。我們基本上必須使用門戶或PowerShell腳本通過Azure存儲備份/恢復數據庫。在數據庫被複制的過程中,不幸的是客戶停機。另請注意,在導入V12服務器之前需要知道使用哪個新數據庫層。

在過去一週我們剛剛完成的測試周期中,我們將~12 GB(8個數據庫)從V11服務器遷移到V12服務器。備份數據庫需要大約1小時47分鐘,然後恢復數據庫需要2小時24分鐘。所以在整個過程中,你會得到大約21分鐘/ GB的粗略基準,如果你有很多大型數據庫,這並不是很好。幸運的是,我們大部分數據庫都很小(< 1 GB)。如果您有許多較大的數據庫,則可能需要在V11服務器(這是一項聯機操作)中升級它們,然後升級整個服務器(它也處於聯機狀態)以避免停​​機。

+1

爲了將來的參考,您通常可以使用SQLPackage獲得更好的導入/導出操作性能。exe在Azure虛擬機上使用導入/導出服務通過門戶。 – cbattlegear

+0

非常及時和徹底的答案,謝謝。 – SamJolly

+0

SQL DB有一個將數據庫從V11升級到V12而無需停機的解決方案。請參閱https://azure.microsoft.com/en-in/documentation/articles/sql-database-v12-upgrade/ –

0

我會建議創建一個新的服務器,並做數據庫複製(創建數據庫[copy_db]作爲[source_db]的副本,然後將服務器升級到V12。與此方法相比,I/E服務需要很長時間。一致的狀態,你可以在read_only模式下設置源數據庫