2025 年 7 月 22 日知名開源資料庫管理系統 MySQL 於今日推出 9.4.0 版本,作為創新 (Innovation) 釋出。本次更新不僅針對效能、穩定性與安全性進行全面強化,還加入多項新功能並修復大量已知錯誤,提升企業與開發者的資料處理體驗。
主要更新亮點
字元集與排序規則優化
- IFNULL() 用於 LIKE 子句造成的 ER_CANT_AGGREGATE_2COLLATIONS 錯誤已修正。此次修正調整了排序規則的推導邏輯,降低 NONE 強度,避免現有功能受影響,同時優化 COERCIBILITY() 結果回傳,提升字元集處理彈性。
編譯與相容性調整
- 支援 CMake 4、GCC 11 以上版本,強化未來相容性。同時升級內建 libcurl、ICU、zstd 等函式庫,並對 macOS、RHEL、Fedora 等多平台進行優化。
- 放棄對 RHEL7/ARM 系統支援,因該平台已無法取得新版 GCC。
元件與設定
- 元件狀態管理更嚴謹,防止 UDF 元件在運行中重複卸載造成伺服器異常。
- Windows 安裝器 MySQL Configurator 多項優化,包含支援新防火牆元件、拒絕重複用戶、密碼與服務名稱處理更彈性,並改善升級流程。
廢止與移除
- 傳統 Plugin API 正式棄用,未來將全面改用元件(Component)架構,相關參數與 API 已標註為過時。
- MD5()、SHA1() 雜湊函式宣告棄用,將於未來版本移除,建議開發者儘早改用更安全的 SHA-2 系列函式。
企業級防火牆元件
- 全新 MySQL Enterprise Firewall Component 登場,取代過去的防火牆外掛,功能更完整,並支援從舊外掛升級轉換。
InnoDB 引擎優化
- 記憶體管理、資料表匯入、索引、二次寫入緩衝區等多項修正,有效降低潛在記憶體洩漏、提升資料安全性與穩定性。
- innodb_change_buffer_max_size 預設值調整為 5,平衡 I/O 負載與快取效益。
安裝與平台支援
- macOS、Debian/Ubuntu rootless 安裝改善,Red Hat Enterprise Linux/Oracle Linux 10 RPM/Yum 支援,讓部署更加彈性。
- Fedora、Ubuntu 等發行版安裝衝突問題獲得解決。
JavaScript 程式儲存支援
- 記憶體異常處理強化、GraalVM 升級,支援 BIT 型別等,擴大 JavaScript 在資料庫中的應用場景。
日誌與監控
- 錯誤日誌將自動記錄 CPU 與實體記憶體資訊,方便運維監控。
性能模式 (Performance Schema) 優化
新增/變更功能
- mysql 客戶端新增 --commands 選項,可開啟或關閉大部分客戶端指令,增強操作彈性。
- Group Replication、NDB Cluster 等分散式與高可用功能強化,新增多項錯誤判斷、記錄切片等高級功能。
Bug 修正
- 解決超過 100 項重要錯誤,涵蓋 Group Replication、InnoDB、NDB Cluster、Replication、分區、視圖、查詢優化器等多個面向。
- 效能回歸問題、網路延遲、主從複製異常、空間型別索引等實務問題皆有針對性改善。
小結
MySQL 9.4.0 代表官方朝向現代化、雲端友善與安全可靠方向邁進的重要里程碑。無論是企業用戶還是開發者,都建議及早規劃升級,享受新版本帶來的豐富功能與優異體驗。
參考資料
https://dev.mysql.com/doc/relnotes/mysql/9.4/en/news-9-4-0.html