| 維度 | MySQL | SQL Server |
|---|---|---|
| 儲存引擎 | 插件式(InnoDB、MyISAM、RocksDB...)可換 | 單一核心引擎(行儲存 + Columnstore) |
| 作業系統 | Linux/Windows/macOS/FreeBSD/Solaris | Windows/Linux (2017+)/容器 |
| 授權模式 | GPL 社區版 + 商業授權(Oracle) | 核心授權(Enterprise/Standard)+ 訂閱制 |
| SQL 方言 | MySQL SQL(含非標準擴充) | T-SQL(擴充程式化能力強) |
| 交易隔離 | 預設 REPEATABLE READ (MVCC) | 預設 READ COMMITTED (鎖 + 版本存儲) |
| 分區/分表 | 原生分區表、Sharding 需中間件 | 資料表分區、PolyBase 外部表、圖資料 |
| 高可用 | MGR/InnoDB Cluster、Orchestrator、GTID | Always On AG、FCI、Log Shipping、Mirroring |
| 雲端原生 | Aurora、PolarDB、CloudSQL、MySQL HeatWave | Azure SQL、AWS RDS for SQL Server、SQL MI |
innodb_buffer_pool 靜態配置為主。MAXDOP、Cost Threshold for Parallelism 精細控制;MySQL 8.0.14+ 支援 innodb_parallel_read_threads、max_parallel_workers_per_gather(實驗性)。| 場景 | MySQL (商業支援) | SQL Server Enterprise |
|---|---|---|
| 16 核心、生產環境、3 年支援 | ~$10,000/年 (Oracle MySQL Enterprise) | ~$13,748/核心 × 16 = $219,968 (永久) + SA |
| 雲端 PaaS (4 vCPU, 16GB, 500GB) | AWS Aurora MySQL ~$0.48/hr = $4,200/年 | Azure SQL MI ~$1.80/hr = $15,768/年 |
社區版 MySQL 免費,但無官方 SLA、安全補丁延遲、企業級工具缺失。
validate_password、audit_log、firewall 外掛提供同等能力,需額外部署配置。| 面向 | MySQL | SQL Server |
|---|---|---|
| IDE/工具 | MySQL Workbench、DBeaver、DataGrip、VS Code | SSMS、Azure Data Studio、VS Code、Visual Studio |
| ORM 支援 | Hibernate、EF Core、Django、Laravel、GORM 完美 | EF Core (第一方)、Dapper、NHibernate 完美 |
| 程式化邏輯 | Stored Procedure/Function/Trigger(功能較弱) | T-SQL 強大(TRY/CATCH、TVP、CLR 整合、JSON/XML 原生) |
| 遷移工具 | pt-online-schema-change、gh-ost、Flyway、Liquibase | SSDT、DACFx、Flyway、Liquibase、DBSchema |
沒有絕對優劣,只有適不適合。MySQL 以開放、輕量、高併發讀寫見長;SQL Server 以企業級工具鏈、T-SQL 表達力、OLAP 強項、Windows 整合見長。根據團隊技能、預算、架構演進路線圖綜合判斷。