MySQL 9.0 參考手冊  /  升級 MySQL  /  升級最佳實務

3.3 升級最佳實務

MySQL 支援在次要版本(在 LTS 系列內)之間升級,以及升級到下一個主要版本(跨 LTS 系列)。升級提供最新的功能、效能和安全性修正。

為了準備並確保您成功升級到最新的 MySQL 版本,我們建議以下最佳實務

決定升級的主要或次要版本

MySQL 發行模型區分 LTS(長期支援)和創新發行版本。LTS 版本提供 8 年以上的支援,適用於生產環境。創新發行版本為使用者提供最新的功能和效能。深入了解 MySQL 發行模型

執行次要版本升級很簡單,而主要版本升級則需要在升級之前進行策略性規劃和額外測試。本指南對於主要版本升級特別有用。

決定升級類型

升級 MySQL 主要有三種方式,請閱讀相關文件以確定哪種升級類型最適合您的情況。

檢閱支援的平台

如果您的目前作業系統不支援新版本的 MySQL,則計劃升級作業系統,否則不支援就地升級。

如需目前支援平台的清單,請參閱:https://mysql.dev.org.tw/support/supportedplatforms/database.html

了解 MySQL 伺服器變更

每個主要版本都帶有新功能、行為變更、棄用和移除。了解這些變更對現有應用程式的影響非常重要。

請參閱:第 3.5 節,「MySQL 9.0 的變更」

執行升級檢查器並修正不相容性

MySQL Shell 的 升級檢查器公用程式會偵測資料庫版本之間的不相容性,這些不相容性必須在執行升級之前解決。util.checkForServerUpgrade() 函數會驗證 MySQL 伺服器執行個體是否準備好升級。連線到現有的 MySQL 伺服器,然後選取您計劃升級到的 MySQL 伺服器版本,讓公用程式報告升級前要解決的問題。這些問題包括資料類型、儲存引擎等的不相容性。

當升級檢查公用程式不再報告任何問題時,您就準備好升級了。

在測試環境中執行應用程式

在完成升級檢查器的要求後,接下來在新目標 MySQL 伺服器上測試您的應用程式。檢查 MySQL 錯誤日誌和應用程式日誌中的錯誤和警告。

基準測試應用程式和工作負載效能

我們建議透過比較應用程式和工作負載在使用舊版和新版 MySQL 版本的效能來基準測試它們。通常,較新的 MySQL 版本會增加功能並提高效能,但在某些情況下,升級可能會使特定查詢執行速度變慢。可能導致效能降低的問題

  • 先前的伺服器組態對於較新版本並非最佳

  • 資料類型的變更

  • 多位元組字元集支援所需的額外儲存空間

  • 儲存引擎變更

  • 已刪除或變更的索引

  • 更強的加密

  • 更強的驗證

  • SQL 優化器變更

  • 較新版本的 MySQL 需要額外的記憶體

  • 實體或虛擬硬體速度較慢 - 計算或儲存

如需相關資訊和可能的緩解技術,請參閱 有效的效能降低

平行執行兩個 MySQL 版本

為了盡量降低風險,最好在平行執行升級的系統時保持目前的系統執行。

執行最終測試升級

在升級生產伺服器之前,先練習並執行一次演練。在升級生產系統之前,徹底測試升級程序。

檢查 MySQL 備份

在執行升級之前,請檢查是否存在完整備份且可使用。

升級生產伺服器

您已準備好完成升級。

企業支援

如果您是 MySQL 企業版的客戶,您也可以聯絡 MySQL 支援團隊的專家,以獲得任何您可能有的問題解答。