Ruby on Rails 專案需使用 MySQL,現有數據在 SQL Server 2008 Express。嘗試 ODBC 導出失敗(架構不匹配),最終採用 **mss2sql** 圖形化工具成功遷移。
啟動工具 → 「Move to MySQL server directly」→ Next。

填寫實例名、認證方式(Windows/ SQL Server 認證)、數據庫。測試連接成功後 Next。

選擇 Local/Remote,填寫 Host、Port、用戶名、密碼、目標數據庫。測試連接。

若目標庫已存在同名庫,四種選項:
本案例目標庫為空,選「整庫覆蓋」。

列出源庫所有表,**Add All** 全選,或按需勾選。

數據量較小(~10 分鐘),大表建議命令行工具/分批遷移。

表結構、數據、中文編碼均正常,無亂碼、無丟失。

| SQL Server | MySQL | 備註 |
|---|---|---|
| INT IDENTITY(1,1) | INT AUTO_INCREMENT | 主鍵自增 |
| DATETIME | DATETIME / TIMESTAMP | 精度對齊 |
| NVARCHAR(n) | VARCHAR(n*2) utf8mb4 | Unicode 存儲 |
| MONEY | DECIMAL(19,4) | 貨幣精確 |
| BIT | TINYINT(1) / BOOLEAN | 布爾值 |
| UNIQUEIDENTIFIER | CHAR(36) / BINARY(16) | GUID |
SSIS、bcp + LOAD DATA INFILE、mysqldump --tab + mysqlimport 並行批量導入。AUTO_INCREMENT 值,避免主鍵衝突。mss2sql 適合**中小型、一次性、異構遷移**,圖形化操作降低門檻。生產級大規模遷移請採用「Schema 先行對齊 → 數據分批並行導入 → 校驗一致性 → 業務驗證 → 切流量」標準化流程,工具僅為加速器,規範才是保障。