MariaDB 是 MySQL 創始人 Michael "Monty" Widenius 為確保 MySQL 持續開源而創立的分支專案,採用 Maria 存儲引擎(後更名為 Aria),完全相容 MySQL 協議、API、SQL 語法,且在效能、功能、開放治理上持續創新。
| 領域 | 主要改進 | 效益 |
|---|---|---|
| 子查詢優化 | 半連結、物化、IN-to-EXISTS 轉換等策略增強 | 複雜子查詢執行計畫更優,大幅降低臨時表與全表掃描 |
| Index Merge 改進 | Index Merge Union/Intersection/Sort-Union 策略優化 | 多索引合併掃描效率提升,減少回表 |
| 衍生表與 View 優化 | 衍生表合併、View 就地物化 | 避免不必要的臨時表建立,查詢回應加速 |
| 磁碟存取優化 | 預讀、緩衝池刷盤、檔案系統互動調優 | 降低 I/O 延遲,提升高併發吞吐 |
| NoSQL 風格介面 | HandlerSocket / 動態欄位 / JSON 前身功能 | 高吞吐鍵值存取繞過 SQL 解析層 |
| 複寫與 Binlog | GTID 前身、Binlog 組提交、從庫並行重放 | 複寫延遲降低、故障轉移更可靠 |
| 優化器控制 | optimizer_switch 細粒度開關 | DBA 可針對特定查詢關閉/開啟特定優化規則 |
| Windows 效能提升 | I/O 完成埠 (IOCP)、鎖免競爭、大頁面支援 | Windows 平台上吞吐與延遲顯著改善 |
EXPLAIN 驗證。mysql_upgrade 及降級腳本。MariaDB 5.3 系列確立了「MySQL 相容 + 優化器現代化 + 開放治理」的差異化定位,為後續 5.5、10.x 系列奠定基礎。對於受限於 MySQL 官方版本釋出節奏、渴望更激進優化與功能的團隊,MariaDB 是極具吸引力的替代選項。