Red Hat Training

A Red Hat training course is available for RHEL 8

9.3.5. MySQL 8.0 の RHEL 8 バージョンへの移行

RHEL 7 には、MySQL データベースファミリーからのサーバーのデフォルトの実装として、MariaDB 5.5 が同梱されています。RHEL 7 用の Red Hat Software Collections オファリングは、MySQL 8.0MariaDB のいくつかのバージョンを提供します。RHEL 8 は、MySQL 8.0MariaDB 10.3、および MariaDB 10.5 を提供します。

この手順では、mysql_upgrade ユーティリティーを使用した MySQL 8.0 の Red Hat Software Collections バージョンから MySQL 8.0 の RHEL8 バージョンへの移行について説明します。mysql_upgrade ユーティリティーは、mysql-server パッケージによって提供されます。

注記

MySQLの Red Hat Software Collections バージョンでは、ソースデータディレクトリーは /var/opt/rh/rh-mysql80/lib/mysql/ です。RHEL 8 では、MySQL データは /var/lib/mysql/ ディレクトリーに保存されます。

前提条件

  • アップグレードを実行する前に、MySQL データベースに保存されているすべてのデータをバックアップすること。

手順

  1. mysql-server パッケージが RHEL 8 システムにインストールされていることを確認します。

    # yum install mysql-server
  2. データのコピー時に、mysqld サービスがソースシステムとターゲットシステムのどちらでも実行されていないことを確認してください。

    # systemctl stop mysqld.service
  3. RHEL 7 ソースシステムの /var/opt/rh/rh-mysql80/lib/mysql/ ディレクトリーから RHEL 8 ターゲットシステムの /var/lib/mysql/ ディレクトリーにデータをコピーします。
  4. ターゲットシステムでコピーされたファイルに適切なパーミッションと SELinux コンテキストを設定します。

    # restorecon -vr /var/lib/mysql
  5. mysql:mysql が、/var/lib/mysql ディレクトリー内のすべてのデータの所有者であることを確認してください。

    # chown -R mysql:mysql /var/lib/mysql
  6. ターゲットシステムで MySQL サーバーを起動します。

    # systemctl start mysqld.service

    注意: MySQL の以前のバージョンでは、内部テーブルをチェックおよび修復するために mysql_upgrade コマンドが必要でした。これは、サーバーの起動時に自動的に実行されるようになりました。