對於支援的基於 Yum 的平台(請參閱 第 2.5.1 節「使用 MySQL Yum 儲存庫在 Linux 上安裝 MySQL」,以取得清單),您可以使用 MySQL Yum 儲存庫對 MySQL 執行就地升級(也就是說,取代舊版本,然後使用舊的資料檔案執行新版本)。
創新系列(例如 MySQL 9.0)與 LTS 系列(例如 MySQL 8.4)處於不同的軌道。LTS 系列預設為啟用狀態。
在對 MySQL 執行任何更新之前,請仔細遵循第 3 章《升級 MySQL》中的說明。其中討論的其他說明中,在更新之前備份您的資料庫尤其重要。
以下說明假設您已使用 MySQL Yum 儲存庫或直接從 MySQL 開發者專區的 MySQL 下載頁面下載的 RPM 套件安裝 MySQL;如果情況並非如此,請遵循取代 MySQL 的原生第三方發行版本中的說明。
-
選取目標系列
預設情況下,MySQL Yum 儲存庫會將 MySQL 更新為您在安裝期間選擇的版本軌道中的最新版本(有關詳細資訊,請參閱選取發行系列),這表示,例如,8.0.x 安裝不會自動更新為 8.4.x 版本。若要更新至其他發行系列,您必須先停用已選取(預設或自行選取)系列的子儲存庫,然後啟用目標系列的子儲存庫。若要執行此操作,請參閱選取發行系列中提供的在
/etc/yum.repos.d/mysql-community.repo
檔案中編輯子儲存庫項目的通用說明。一般而言,若要從一個錯誤修正系列升級到另一個錯誤修正系列,請前往下一個錯誤修正系列,而不是跳過錯誤修正系列。例如,如果您目前正在執行 MySQL 5.7 且想要升級至 MySQL 8.4,請先升級至 MySQL 8.0,再升級至 MySQL 8.4。如需其他詳細資訊,請參閱第 3.5 節「MySQL 9.0 中的變更」。
如需從 MySQL 5.7 升級至 8.0 的重要資訊,請參閱從 MySQL 5.7 升級至 8.0。
如需從 MySQL 8.0 升級至 8.4 的重要資訊,請參閱從 MySQL 8.0 升級至 8.4。
MySQL Yum 儲存庫不支援 MySQL 的就地降級。請遵循第 4 章《降級 MySQL》中的說明。
-
升級 MySQL
使用標準 yum (或 dnf) 命令升級 MySQL 元件,例如 MySQL Server
sudo yum update mysql-server
適用於已啟用 dnf 的平台
sudo dnf upgrade mysql-server
或者,您可以透過告知 Yum 更新系統上的所有內容來更新 MySQL,這可能會花費更多的時間。適用於未啟用 dnf 的平台
sudo yum update
適用於已啟用 dnf 的平台
sudo dnf upgrade
注意事項在 Yum 更新之後,MySQL 伺服器一律會重新啟動。
您也可以只更新特定元件。使用以下命令列出 MySQL 元件的所有已安裝套件(對於已啟用 dnf 的系統,請在命令中將yum 取代為 dnf)
sudo yum list installed | grep "^mysql"
在識別您選擇的元件的套件名稱之後,使用以下命令更新套件,並將套件名稱
取代為套件的名稱。適用於未啟用 dnf 的平台
sudo yum update package-name
適用於已啟用 dnf 的平台
sudo dnf upgrade package-name
升級共用用戶端程式庫
在使用 Yum 儲存庫更新 MySQL 之後,使用舊版共用用戶端程式庫編譯的應用程式應該可以繼續運作。
如果您重新編譯應用程式並將它們與更新的程式庫動態連結:與新版共用程式庫的典型情況一樣,在較新和較舊的程式庫之間,符號版本設定有差異或新增項目(例如,較新的標準 9.0 共用用戶端程式庫與 Linux 發行版本的軟體儲存庫原生提供的某些較舊的 - 先前或變體 - 共用程式庫版本,或來自其他來源),使用更新的較新共用程式庫編譯的任何應用程式,都需要在部署應用程式的系統上使用這些更新的程式庫。如預期的,如果這些程式庫未就緒,則需要共用程式庫的應用程式會失敗。因此,請務必在這些系統上部署來自 MySQL 的共用程式庫套件。若要執行此操作,請將 MySQL Yum 儲存庫新增至系統(請參閱新增 MySQL Yum 儲存庫),並使用使用 Yum 安裝其他 MySQL 產品和元件中提供的說明安裝最新的共用程式庫。