預設沒有資料情況下
我們需要一個IDE介面存取來做常用的SQL指令進行資料增添改刪
第一種工具SSMS.
只不過當我們敲完要連線時候就會發生此錯誤
我們可以至
概觀->設定伺服器防火牆
可看到默認不允許公用存取
這裡我們將其開啟
添加本機IP至防火牆規則
再次回到SSMS就能成功連線登入
第二種工具.Azure Data Studio
https://learn.microsoft.com/zh-tw/sql/azure-data-studio/download-azure-data-studio?view=sql-server-ver16
可以到微軟官網點下載安裝執行檔
目前本機已安裝好了
那也可以連結進入
這裡要注意別於SSMS要貼的是連接字串: tcp:en1test.database.windows.net,1433
Azure Data Studio這裡要貼的是server name: en1test.database.windows.net
這裡我們要進行資料的migration
藉由Data Migration Assistant
https://www.microsoft.com/en-us/download/details.aspx?id=53595
安裝整體流程不會太難就是無腦下一步到底
開啟後點選展開+ 去選擇migration
來源端設SQL Server
目的端設Azure
在此可選擇schema包含資料都要轉移
移轉UI操作
首先來源端
選擇目標要轉移的DB
接著目的端
那通常不會一帆風順(可能會出現有關資料庫定序不同的error資訊)
有關資料庫定序可參考之前blog
https://coolmandiary.blogspot.com/2021/12/t-sql27where.html
可到Azure Data Studio先下
SELECT DATABASEPROPERTYEX ('DB名稱' ,'Collation' )
改為
SELECT DATABASEPROPERTYEX ('en1db' ,'Collation' )
確認當前默認定序為何
在Azure Database 的 Paas介面可以也可進行查看
只不過默認不允許直接下SQL更改定序
在官網也有此說明
(The ALTER DATABASE COLLATE statement is not supported on Azure SQL Database.)
https://learn.microsoft.com/en-us/sql/relational-databases/collations/set-or-change-the-database-collation?view=azuresqldb-current
在此參考此篇介紹SOP
https://www.mssqltips.com/sqlservertip/5530/how-to-change-an-azure-sql-database-collation/
在對on-premises SQL Server
你本機的
這時再去針對它進行定序修改
再將其給匯出
再回去azure db 實體去匯入
這邊暫時先將其改新名字等轉移過去後
再將舊的刪除
新的更名回原先DB名稱即可
這邊繼續運行移轉
就完成DB移轉了
Ref:
How to change an Azure SQL Database Collation
https://www.sqlshack.com/how-to-change-an-azure-sql-database-collation/