[個人筆記] 把本機資料庫上傳至Windows Azure SQL Database (先前稱為 SQL Azure)

[個人筆記] 把本機資料庫上傳至Windows Azure SQL Database (先前稱為 SQL Azure)

一共有幾種方式,各有適合的情境:

(1)產生Script後再由SQL Azure執行

http://www.cnblogs.com/threestone/archive/2012/02/06/2338122.html

http://msdn.microsoft.com/zh-tw/library/windowsazure/ee621790.aspx

[重點] 匯出 SQL 指令 (使用 [產生指令碼] 的方法) 時,記得在最後一步要先選 [進階],然後選擇要輸出 SQL Azure 的指令碼

 

(2)透過資料庫匯出資料的功能

目前個人直接匯出並沒有成功過,得透過第一種方式產生指令碼先把資料結構建立進入SQL Azure再進行資料匯出,記得在建立資料庫的時候定序要選擇與原始資料庫相同:

image

否則會出現如下的錯誤:

image

可利用的情境在於如果資料庫的資料量龐大時,透過產生指令碼建立資料過於費時與檔案過大時,可以採用這個方法或者第三種方法,否則仍建議採用第一種或者第五種方式。

 

(3)Microsoft SQL 2012 Management才具有的將”資料庫部署到SQL Azure”

image

會遇到一些問題,基本上就是把不需要的東西移除,例如我就是把資料表屬性裡面的”擴充屬性”移除。不過一般而言,除非產生指令碼會造成難度(例如資料量太大),否則仍建議採用第一種或者第四種方式。

http://social.msdn.microsoft.com/Forums/en-US/ssdsgetstarted/thread/75aa2d5c-b567-4b8c-81ae-38476f4f14c4

 http://blogs.msdn.com/b/ssdt/archive/2012/04/19/migrating-a-database-to-sql-azure-using-ssdt.aspx

(4)Migrating Databases to Windows Azure SQL Database

http://msdn.microsoft.com/zh-tw/library/windowsazure/ee730904.aspx

http://sqlazuremw.codeplex.com/

我最推薦的方式,目前已經支援繁體中文,測試起來感覺相當方便且穩定,相當於第一種方法的升級版,完整的操作與使用可參考:

http://www.dotblogs.com.tw/terrychuang/archive/2012/10/24/78824.aspx

 

(5)更複雜的方式…

http://blogs.msdn.com/b/cesardelatorre/archive/2010/06/04/importing-exporting-data-to-sql-azure-databases-using-bcp-and-sql-scripts.aspx

http://msdn.microsoft.com/zh-tw/library/windowsazure/hh335292.aspx