MySQL 5.7 から MySQL 8 へのアップグレード

前提条件

MySQL 5.7 から MySQL 8 へマイグレートするには、少なくとも Pandora FMS バージョン NG 760 MR 52 へアップグレードする必要があります。

  • root ユーザにてターミナルウインドウを開き、次のコマンドを実行します。
mysql --version

次のような出力が得られます。

mysql  Ver 14.14 Distrib 5.7.33, for Linux (x86_64) using  EditLine wrapper

CentOS 7

  • Pandora FMS サーバと Pandora FMS ソフトウエアエージェントを停止します。
/etc/init.d/pandora_server stop
/etc/init.d/pandora_agent_daemon stop
  • Apache Web サーバを停止します。
systemctl stop httpd.service

または、

/etc/init.d/httpd stop
  • Make a special database backup that is compatible with MySQL 8:
  • MySQL 8 に互換性がある特別なデータベースバックアップを作成します。
mysqldump -u root -p pandora \
  --skip-add-drop-table \
  --complete-insert \
  --no-create-info > backup_pandora.sql
  • MySQL 5.7 での通常のバックアップを作成します。(このバージョンに戻す場合の追加の保険です)
mysqldump -u root -p pandora > backup_pandora_5.7.sql
  • MySQL 設定ファイル(my.cnf)をバックアップします。
cp /etc/my.cnf /tmp/my.cnf.BACK
  • Percona 5 リポジトリを削除します。
rpm -qa | grep Percona-Server | xargs rpm -e --nodeps
  • Percona 8 リポジトリをインストールします。
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y
  • 前述のリポジトリを有効化します。
percona-release setup ps80
  • Percona 8 をインストールします。
yum install percona-server-server
  • my.cnf ファイルをリストアします。
mv /tmp/my.cnf.BACK /etc/my.cnf
  • query_cache_* を無効化するように my.cnf ファイルを修正します。
sed -i -e "s/^query_cache_type.*/#query_cache_type/g" /etc/my.cnf
sed -i -e "s/^query_cache_size.*/#query_cache_size/g" /etc/my.cnf
sed -i -e "s/^query_cache_min_res_unit.*/#query_cache_min_res_unit/g" /etc/my.cnf
sed -i -e "s/^query_cache_limit.*/#query_cache_limit/g" /etc/my.cnf
  • MySQL サービスを起動します。
systemctl start mysql

または、

service mysqld start
  • インストールされたバージョンを確認します。
mysql --version

次のような出力を確認できます。

mysql  Ver 8.0.28-19 for Linux on x86_64 (Percona Server (GPL), Release 19, Revision 31e88966cd3)
  • MySQL のコマンドラインで、
    • pandora データベースを削除します。
    • 新たな pandora データベースを作成します。
    • pandora データベースを開き、Pandora FMS Web コンソールにあるスキーマをインポートします。
    • データをインポートします。
    • 特別な MySQL 8 互換バックアップをインポートします。
# mysql -u root -p pandora
> drop database pandora;
> create database pandora;
> use pandora;
> source /var/www/html/pandora_console/pandoradb.sql;
> source backup_pandora.sql;
  • Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを起動します。
/etc/init.d/pandora_server start
/etc/init.d/pandora_agent_daemon start
  • Apache Web サーバを起動します。
systemctl start httpd.service

または、

/etc/init.d/httpd start

Rocky Linux 8/AlmaLinux 8/RHEL 8

  • Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを停止します。
/etc/init.d/pandora_server stop
/etc/init.d/pandora_agent_daemon stop
  • Apache web サーバを停止します。
systemctl stop httpd.service

または、

/etc/init.d/httpd stop
  • MySQL 8 に互換性のある特別なデータベースバックアップを作成します。
mysqldump -u root -p pandora \
  --skip-add-drop-table \
  --complete-insert \
  --no-create-info> backup_pandora.sql
  • MySQL 5.7 での通常のバックアップを作成します。(このバージョンに戻す場合の追加の保険です。)
mysqldump -u root -p pandora > backup_pandora_5.7.sql
  • MySQL 設定ファイル(my.cnf)をバックアップします。
cp /etc/my.cnf /tmp/my.cnf.BACK
  • Percona 5 リポジトリを削除します。
rpm -qa | grep Percona-Server | xargs rpm -e --nodeps
  • Percona 8 リポジトリをインストールします。
dnf install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y
  • 前述のリポジトリを有効化します。
percona-release setup ps80
  • Percona 8 をインストールします。
dnf install percona-server-server
  • my.cnf ファイルをリストアします。
mv /tmp/my.cnf.BACK /etc/my.cnf
  • query_cache_* を無効化するために my.cnf を修正します。
sed -i -e "s/^query_cache_type.*/#query_cache_type/g" /etc/my.cnf
sed -i -e "s/^query_cache_size.*/#query_cache_size/g" /etc/my.cnf
sed -i -e "s/^query_cache_min_res_unit.*/#query_cache_min_res_unit/g" /etc/my.cnf
sed -i -e "s/^query_cache_limit.*/#query_cache_limit/g" /etc/my.cnf
  • MySQL サービスを起動します。
systemctl start mysql

または、

service mysqld start
  • インストールされたバージョンを確認します。
mysql --version

次のような出力が見られます。

mysql  Ver 8.0.28-19 for Linux on x86_64 (Percona Server (GPL), Release 19, Revision 31e88966cd3)
  • MySQL のコマンドラインで、
    • pandora データベースを削除します。
    • 新たな pandora データベースを作成します。
    • pandora データベースを開き、Pandora FMS Web コンソールにあるスキーマをインポートします。
    • データをインポートします。
    • 特別な MySQL 8 互換バックアップをインポートします。
# mysql -u root -p pandora
> drop database pandora;
> create database pandora;
> use pandora;
> source /var/www/html/pandora_console/pandoradb.sql;
> source backup_pandora.sql;
  • Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを起動します。
/etc/init.d/pandora_server start
/etc/init.d/pandora_agent_daemon start
  • Apache web サーバを起動します。
systemctl start httpd.service

または、

/etc/init.d/httpd start

Pandora FMS ドキュメント一覧に戻る