文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0MB
PDF (A4) - 40.1MB
Man Pages (TGZ) - 258.2KB
Man Pages (Zip) - 365.3KB
Info (Gzip) - 4.0MB
Info (Zip) - 4.0MB


MySQL 9.0 參考手冊  /  ...  /  使用 MySQL Yum 儲存庫在 Linux 上安裝 MySQL

2.5.1 使用 MySQL Yum 儲存庫在 Linux 上安裝 MySQL

適用於 Oracle Linux、Red Hat Enterprise Linux、CentOS 和 Fedora 的 MySQL Yum 儲存庫 提供 RPM 套件,用於安裝 MySQL 伺服器、用戶端、MySQL Workbench、MySQL Utilities、MySQL Router、MySQL Shell、Connector/ODBC、Connector/Python 等等(並非所有套件都適用於所有發行版本;詳細資訊請參閱使用 Yum 安裝其他 MySQL 產品和元件)。

開始之前

作為一個受歡迎的開源軟體,MySQL 以其原始或重新封裝的形式,廣泛安裝在來自各種來源的許多系統上,包括不同的軟體下載網站、軟體儲存庫等等。以下說明假設您的系統上尚未安裝使用第三方發行的 RPM 套件的 MySQL;如果不是這種情況,請按照 取代 MySQL 的原生第三方發行版本 中給出的說明進行操作。

注意

儲存庫設定 RPM 檔案名稱以 mysql84 開頭,描述預設啟用安裝的 MySQL 系列。在此案例中,MySQL 8.4 LTS 子儲存庫預設為啟用。它也包含其他子儲存庫版本,例如 MySQL 8.0 和 MySQL 創新系列,這些版本預設為停用。選擇創新系列來安裝 MySQL 9.0。

全新安裝 MySQL 的步驟

請按照下列步驟選擇並安裝最新的 MySQL 產品

  1. 新增 MySQL Yum 儲存庫

    將 MySQL Yum 儲存庫新增至您系統的儲存庫清單中。這通常是一次性操作,透過安裝 MySQL 提供的 RPM 來執行。請按照下列步驟操作

    1. 從 MySQL 開發者專區的 MySQL Yum 儲存庫頁面 (https://mysqldev.dev.org.tw/downloads/repo/yum/) 下載。

    2. 選擇並下載您平台的發行套件。

    3. 安裝已下載的發行套件。套件檔案格式為

      mysql84-community-release-{platform}-{version-number}.noarch.rpm
      • mysql84:表示預設啟用的 MySQL 版本。在此案例中,MySQL 8.4 預設為啟用,而 MySQL 8.0 和 MySQL 創新系列都可用,但預設為停用。

      • {平台}:平台代碼,例如 el7、el8、el9、fc38、fc39 或 fc40。「el」代表 Enterprise Linux,「fc」代表 Fedora,並以平台的基本版本號結尾。

      • {版本號碼}:MySQL 儲存庫設定 RPM 的版本,因為它們會收到偶爾的更新。

      安裝您為系統下載的 RPM,例如

      $> sudo yum localinstall mysql84-community-release-{platform}-{version-number}.noarch.rpm

      安裝命令會將 MySQL Yum 儲存庫新增至您系統的儲存庫清單,並下載 GnuPG 金鑰以檢查軟體套件的完整性。如需 GnuPG 金鑰檢查的詳細資訊,請參閱第 2.1.4.2 節,「使用 GnuPG 驗證簽章」

      您可以使用以下命令檢查 MySQL Yum 儲存庫是否已成功新增並啟用(對於已啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

      $> yum repolist enabled | grep mysql.*-community

      範例輸出

      mysql-8.4-lts-community               MySQL 8.4 LTS Community Server
      mysql-tools-8.4-lts-community            MySQL Tools 8.4 LTS Community

      這也示範了預設啟用最新的 LTS MySQL 版本。以下說明如何選擇不同的發行系列,例如創新軌道(目前是 9.0)或之前的系列(例如 MySQL 8.0)。

    注意

    一旦您的系統啟用 MySQL Yum 儲存庫,任何系統範圍的更新,透過 yum update 命令(或已啟用 dnf 的系統的 dnf upgrade),都會升級您系統上的 MySQL 套件,並取代任何原生的第三方套件,如果 Yum 在 MySQL Yum 儲存庫中找到其替換套件;如需討論這對您的系統可能產生的一些影響,請參閱第 3.8 節,「使用 MySQL Yum 儲存庫升級 MySQL」,並參閱升級共用用戶端程式庫

  2. 選擇發行系列

    當使用 MySQL Yum 儲存庫時,預設會選擇最新的錯誤修正系列(目前為 MySQL 8.4)進行安裝。如果這正是您想要的,您可以跳到下一個步驟,安裝 MySQL

    在 MySQL Yum 儲存庫中,每個 MySQL Community Server 發行系列都託管在不同的子儲存庫中。預設情況下,最新 LTS 系列(目前為 MySQL 8.4)的子儲存庫已啟用,而所有其他系列(例如,MySQL 8.0 和 MySQL Innovation 系列)的子儲存庫則預設為停用。使用此命令來查看所有可用的 MySQL 相關子儲存庫(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

    $> yum repolist all | grep mysql

    範例輸出

    mysql-connectors-community                 MySQL Connectors Community   enabled
    mysql-tools-8.4-lts-community               MySQL Tools 8.4 LTS Community        enabled
    mysql-tools-community                      MySQL Tools Community        disabled
    mysql-tools-innovation-community           MySQL Tools Innovation Commu disabled
    mysql-innovation-community                 MySQL Innovation Release Com disabled
    mysql-8.4-lts-community                          MySQL 8.4 Community LTS Server   enabled
    mysql-8.4-lts-community-debuginfo                MySQL 8.4 Community LTS Server - disabled
    mysql-8.4-lts-community-source                   MySQL 8.4 Community LTS Server - disabled
    mysql80-community                        MySQL 8.0 Community Server - disabled
    mysql80-community-debuginfo              MySQL 8.0 Community Server - disabled
    mysql80-community-source                 MySQL 8.0 Community Server - disabled

    若要安裝特定系列(而非最新 LTS 系列)的最新版本,請先停用最新 LTS 系列的錯誤子儲存庫,並啟用特定系列的子儲存庫,然後再執行安裝命令。如果您的平台支援 yum-config-managerdnf config-manager 命令,您可以發出以下命令來停用 8.4 系列的子儲存庫,並啟用 8.0 系列的子儲存庫

    $> sudo yum-config-manager --disable mysql-8.4-lts-community
    $> sudo yum-config-manager --enable  mysql80-community

    對於啟用 dnf 的平台

    $> sudo dnf config-manager --disable mysql-8.4-lts-community
    $> sudo dnf config-manager --enable mysql80-community

    您也可以手動編輯 /etc/yum.repos.d/mysql-community.repo 檔案,藉由切換 enabled 選項,而不用使用 config-manager 命令。例如,EL8 的典型預設條目如下

    [mysql-8.4-lts-community]
    name=MySQL 8.4 LTS Community Server
    baseurl=http://repo.mysql.com/yum/mysql-8.4-community/el/8/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023

    找到您要設定的子儲存庫條目,並編輯 enabled 選項。指定 enabled=0 來停用子儲存庫,或 enabled=1 來啟用子儲存庫。例如,若要從 MySQL innovation track 安裝,請確保 MySQL 8.4 子儲存庫條目的 enabled=0,並且 innovation 條目的 enabled=1

    [mysql80-community]
    name=MySQL 8.0 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/8/$basearch
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023

    您應該在任何時間只啟用一個發行系列的子儲存庫。

    執行以下命令並檢查其輸出,以驗證是否已啟用和停用正確的子儲存庫(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

    $> yum repolist enabled | grep mysql
  3. 停用預設的 MySQL 模組

    (僅限 EL8 系統)基於 EL8 的系統(例如 RHEL8 和 Oracle Linux 8)包含預設啟用的 MySQL 模組。除非停用此模組,否則它會遮蓋 MySQL 儲存庫提供的套件。若要停用包含的模組並使 MySQL 儲存庫套件可見,請使用以下命令(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

    $> sudo yum module disable mysql
  4. 安裝 MySQL

    使用以下命令安裝 MySQL(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

    $> sudo yum install mysql-community-server

    這會安裝 MySQL 伺服器套件(mysql-community-server),以及執行伺服器所需的元件套件,包括用戶端套件(mysql-community-client)、用戶端和伺服器的通用錯誤訊息和字元集(mysql-community-common),以及共用用戶端程式庫(mysql-community-libs)。

  5. 啟動 MySQL 伺服器

    使用以下命令啟動 MySQL 伺服器

    $> systemctl start mysqld

    您可以使用以下命令檢查 MySQL 伺服器的狀態

    $> systemctl status mysqld

如果作業系統已啟用 systemd,則應使用標準 systemctl(或替代地,將參數反轉的 service)命令,例如 stopstartstatusrestart 來管理 MySQL 伺服器服務。預設情況下會啟用 mysqld 服務,並且它會在系統重新啟動時啟動。請參閱 第 2.5.9 節,「使用 systemd 管理 MySQL 伺服器」以取得更多資訊。

在伺服器初始啟動時,如果伺服器的資料目錄為空,則會發生以下情況

  • 初始化伺服器。

  • 在資料目錄中產生 SSL 憑證和金鑰檔案。

  • 安裝並啟用 validate_password

  • 建立超級使用者帳戶 'root'@'localhost。設定超級使用者的密碼並將其儲存在錯誤記錄檔中。若要顯示它,請使用以下命令

    $> sudo grep 'temporary password' /var/log/mysqld.log

    使用產生的臨時密碼登入並為超級使用者帳戶設定自訂密碼,盡快變更 root 密碼

    $> mysql -uroot -p
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
    注意

    validate_password 預設為安裝。由 validate_password 實作的預設密碼策略要求密碼至少包含一個大寫字母、一個小寫字母、一個數字和一個特殊字元,並且密碼總長度至少為 8 個字元。

有關安裝後程序的更多資訊,請參閱 第 2.9 節,「安裝後設定和測試」

注意

基於 EL7 平台的相容性資訊: 來自平台原生軟體儲存庫的以下 RPM 套件與 MySQL Yum 儲存庫中安裝 MySQL 伺服器的套件不相容。使用 MySQL Yum 儲存庫安裝 MySQL 後,您無法安裝這些套件(反之亦然)。

  • akonadi-mysql

使用 Yum 安裝其他 MySQL 產品和元件

您可以使用 Yum 來安裝和管理 MySQL 的個別元件。其中一些元件託管在 MySQL Yum 儲存庫的子儲存庫中:例如,MySQL 連接器位於 MySQL 連接器社群子儲存庫中,而 MySQL Workbench 位於 MySQL 工具社群中。您可以使用以下命令列出適用於您平台的所有 MySQL 元件的套件(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

$> sudo yum --disablerepo=\* --enablerepo='mysql*-community*' list available

使用以下命令安裝您選擇的任何套件,將 套件名稱 替換為套件名稱(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

$> sudo yum install package-name

例如,若要在 Fedora 上安裝 MySQL Workbench

$> sudo dnf install mysql-workbench-community

若要安裝共用用戶端程式庫(對於啟用 dnf 的系統,請將命令中的 yum 替換為 dnf

$> sudo yum install mysql-community-libs

平台特定注意事項

ARM 支援

ARM 64 位元 (aarch64) 在 Oracle Linux 7 上支援,並需要 Oracle Linux 7 軟體集合儲存庫 (ol7_software_collections)。例如,若要安裝伺服器

$> yum-config-manager --enable ol7_software_collections
$> yum install mysql-community-server

使用 Yum 更新 MySQL

除了安裝之外,您也可以使用 MySQL Yum 儲存庫來執行 MySQL 產品和元件的更新。請參閱 第 3.8 節,「使用 MySQL Yum 儲存庫升級 MySQL」以取得詳細資訊。

取代原生的第三方 MySQL 發行版本

如果您已從原生軟體儲存庫(即您自己的 Linux 發行版本提供的軟體儲存庫)安裝了第三方的 MySQL 發行版本,請按照以下步驟操作

  1. 備份您的資料庫

    為避免遺失資料,請務必在嘗試使用 MySQL Yum 儲存庫取代 MySQL 安裝之前備份您的資料庫。請參閱 第 9 章,備份和復原,以了解如何備份您的資料庫。

  2. 新增 MySQL Yum 儲存庫

    按照 新增 MySQL Yum 儲存庫中的指示,將 MySQL Yum 儲存庫新增至您系統的儲存庫清單中。

  3. 透過 Yum 更新或 DNF 升級取代原生的第三方發行版本

    按照設計,當您在系統上執行 yum update 命令(或針對啟用 dnf 的系統執行 dnf upgrade)或執行 yum update mysql-server(或針對啟用 dnf 的系統執行 dnf upgrade mysql-server)時,MySQL Yum 儲存庫會使用 MySQL Yum 儲存庫中最新的錯誤修正版本來取代您的原生第三方 MySQL。

使用 Yum 儲存庫更新 MySQL 之後,使用舊版共用用戶端程式庫編譯的應用程式應該會繼續運作。但是,如果您想要使用更新的程式庫重新編譯應用程式並動態連結它們,請參閱 升級共用用戶端程式庫,以了解一些特殊注意事項。

注意

對於基於 EL7 的平台: 請參閱 基於 EL7 平台的相容性資訊