有遇過專案要轉移資料庫嗎?
從MySQL、Oracle etc.移轉至MSSQL是不是不太了解要怎麼做呢?
別擔心,好心的微軟大大就有提供好用的移轉工具SSMA,
非常的簡單好用,接下來將會一步一步說明使用步驟,
反正就是要確定電腦可以正常使用MySQL及MSSQL。
首先先下載合適的小幫手(此處以MySQL為主),
下載安裝完成後開啟SSMA接著新增檔案,
這裡會要求你選擇SQL Server版本,請選擇本地安裝的版本,
如果使用的是Azure也請選擇相對應的選項。
選擇完成後就可以開始進行連線設定了,
首先先選擇「Connect to MySQL」,並將Server Name、Port、User Name、Password都設定好後按下Connect,
選擇需要要轉移的DataBase
完成後會得到下圖,在這個時候你就可以將你要轉移的項目勾選起來,
如果是整個DataBase都要轉移那就直接將DataBase整個勾選即可,
就像下圖:
需要注意的項目如下:
1. DataBase如果不存在SQL Server的話,會通知你並自動建立,此時務必要選擇「是(Y)」,否則將無法選擇指定的DataBase進行轉移
2. Trust Server Certificate請務必勾選起來,強制信任伺服器端的憑證,否則會出現無法信任遠端憑證錯誤
直接選擇「Connect」即可完成SQL Server連線。
完成後一樣先勾起要被轉移的DataBase即可。
但畢竟是兩種不一樣的資料庫總會有地方不一樣,
例如在MySQL內型別為Text轉移到MSSQL要變成nvarchar(max)該怎麼辦呢?
這時候就可以透過Type Map來做轉換了,
這裡示範將MySQL TINYINT(1)轉成SQL SERVER BIT
設定完後點選「Apply」即可。
前面這麼多設定終於可以進入轉移的正題了,
對著要轉移的DataBase選擇右鍵,
1. 「Convert Schema」 => 轉移資料結構
2. 「Migrate Data」 => 轉移資料
所以我們要先轉移資料結構再轉移資料哦!
轉移完成後,就在SQL Server Metadata Explorer可以檢查一下是否成功轉移,
確認型別等相關資料都沒問題後對著DataBase選擇「Synchronize with Database」,
將這些轉移後的變更通通同步到SQL Server上。
到這一步就已經完成了資料及結構的轉移囉!
是不是很簡單?
如上述有誤,煩請指教。