====== MySQL 5.7 から MySQL 8 へのアップグレード ====== {{indexmenu_n>19}} [[ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]] ===== 前提条件 ===== To migrate from MySQL 5.7 to MySQL 8 you must be upgraded to at least PFMS **version NG 760 MR 52**. MySQL 5.7 から MySQL 8 へマイグレートするには、少なくとも Pandora FMS **バージョン NG 760 MR 52** へアップグレードする必要があります。 * Open a terminal window with the **root** user and enter the following command: * **root** ユーザにてターミナルウインドウを開き、次のコマンドを実行します。 mysql --version You will get an answer similar to the following: 次のような出力が得られます。 mysql Ver 14.14 Distrib 5.7.33, for Linux (x86_64) using EditLine wrapper * Perform a data backup procedure. See "[[:en:documentation:07_technical_annexes:07_backup_and_restore_procedures|Backup and recovery procedures]]" for details. * データバックアップ手順を実行します。詳細は、[[:ja:documentation:07_technical_annexes:07_backup_and_restore_procedures|バックアップおよびリストア手順]] を参照してください。 ===== CentOS 7 ===== * Stop the PFMS server and the PFMS Software Agent: * Pandora FMS サーバと Pandora FMS ソフトウエアエージェントを停止します。 /etc/init.d/pandora_server stop /etc/init.d/pandora_agent_daemon stop * Stop the Apache web server: * Apache Web サーバを停止します。 systemctl stop httpd.service Either: または、 /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 * Make a backup as it is done in MySQL 5.7 (an additional insurance if you have to go back to this version): * MySQL 5.7 での通常のバックアップを作成します。(このバージョンに戻す場合の追加の保険です) mysqldump -u root -p pandora > backup_pandora_5.7.sql * Back up the MySQL configuration file (''my.cnf''): * MySQL 設定ファイル(''my.cnf'')をバックアップします。 cp /etc/my.cnf /tmp/my.cnf.BACK * Delete the Percona 5 repositories: * Percona 5 リポジトリを削除します。 rpm -qa | grep Percona-Server | xargs rpm -e --nodeps * Install the Percona 8 repositories: * Percona 8 リポジトリをインストールします。 yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y * Enable the repositories from the previous step: * 前述のリポジトリを有効化します。 percona-release setup ps80 * Install Percona 8 * Percona 8 をインストールします。 yum install percona-server-server * Restore the file ''my.cnf'': * ''my.cnf'' ファイルをリストアします。 mv /tmp/my.cnf.BACK /etc/my.cnf * Modify the ''my.cnf'' file to dispense with ''query_cache_*'': * ''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 * If **you do not have an HA environment**, disable the binary logs with the following command in the ''[mysqld]'' section: * **HA 環境が無い場合**は、''[[mysqld]]'' セクションの次のコマンドでバイナリログを無効化します。 skip-log-bin See also "[[:en:documentation:05_big_environments:08_optimization#check_mycnf_settings|Optimization and troubleshooting]]" for checking the ''my.cnf'' file. ''my.cnf'' ファイルのチェックには、"[[:ja:documentation:05_big_environments:08_optimization#mycnf_設定の確認|最適化と問題解決]]" も参照してください。 * Start the MySQL service: * MySQL サービスを起動します。 systemctl start mysql or: または、 service mysqld start * Verify the version installed with: * インストールされたバージョンを確認します。 mysql --version You will get an answer similar to the following: 次のような出力を確認できます。 mysql Ver 8.0.28-19 for Linux on x86_64 (Percona Server (GPL), Release 19, Revision 31e88966cd3) * Now use MySQL's own command line and: * Delete the ''pandora'' database. * Create a new ''pandora'' database. * Open the ''pandora'' database and import the schema found in the PFMS Web Console. * Import the data that special MySQL 8 compatible backup. * 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; * The necessary permissions (grants) must be added again; //if you are not logged in// to ''mysql'' as **root** user (replace with the corresponding password) run: * 必要なアクセス許可を再度追加する必要があります。 ''mysql'' に//ログインしていない場合// は、 **root** ユーザ(パスワードは対応するものを利用)として以下を実行します: mysql -u root -p * **Once logged in as root execute the following commands:** * Deactivate the password validation plugin (optional). * **root としてログインしてら次のコマンドを実行します。** * パスワード検証プラグインを無効にします(オプション)。 UNINSTALL COMPONENT 'file://component_validate_password'; * Create the login user if it does not exist: * ログインユーザが存在しない場合は作成します。 CREATE USER ""@'%' IDENTIFIED BY ""; //**Note**// : if you want to restrict the IP address of connection to the database, you must change the ''%'' to the IP address of the connection source. //**注意**// : データベースへの接続 IP アドレスを制限したい場合は、''%'' を接続元の IP アドレスに変更する必要があります。 * Assign the native password for ''mysql'': * ''mysql'' にネイティブパスワードを設定します。 ALTER USER ""@'%' IDENTIFIED WITH mysql_native_password BY ""; * Grant grants on Pandora FMS database (''pandora''): * Pandora FMS データベース(''pandora'')に対して grant を行います。 GRANT ALL PRIVILEGES ON pandora.* TO ""@'%'; * Save the changes and exit: * 変更を保存して抜けます。 flush privileges; exit Once you have finished working with the database, perform the following steps: データベースの対応が完了したら、次のステップを実行します。 * Start the PFMS server and the PFMS Software Agent: * Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを起動します。 /etc/init.d/pandora_server start /etc/init.d/pandora_agent_daemon start * Start the Apache web server: * Apache Web サーバを起動します。 systemctl start httpd.service Either: または、 /etc/init.d/httpd start ===== Rocky Linux 8/AlmaLinux 8/RHEL 8 ===== * Stop the PFMS server and the PFMS Software Agent: * Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを停止します。 /etc/init.d/pandora_server stop /etc/init.d/pandora_agent_daemon stop * Stop the Apache web server: * Apache web サーバを停止します。 systemctl stop httpd.service Either: または、 /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 * Make a backup as it is done in MySQL 5.7 (an additional insurance if you have to go back to this version): * MySQL 5.7 での通常のバックアップを作成します。(このバージョンに戻す場合の追加の保険です。) mysqldump -u root -p pandora > backup_pandora_5.7.sql * Back up the MySQL configuration file (''my.cnf''): * MySQL 設定ファイル(''my.cnf'')をバックアップします。 cp /etc/my.cnf /tmp/my.cnf.BACK * Delete the Percona 5 repositories: * Percona 5 リポジトリを削除します。 rpm -qa | grep Percona-Server | xargs rpm -e --nodeps * Install the Percona 8 repositories: * Percona 8 リポジトリをインストールします。 dnf install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y * Enable the repositories from the previous step: * 前述のリポジトリを有効化します。 percona-release setup ps80 * Install Percona 8 * Percona 8 をインストールします。 dnf install percona-server-server * Restore the file ''my.cnf'': * ''my.cnf'' ファイルをリストアします。 mv /tmp/my.cnf.BACK /etc/my.cnf * Modify the ''my.cnf'' file to dispense with ''query_cache_*'': * ''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 * If **you do not have an HA environment**, disable the binary logs with the following command in the ''[mysqld]'' section: * **HA 環境が無い場合**は、''[mysqld]'' セクションの次のコマンドでバイナリログを無効化します。 skip-log-bin See also "[[:en:documentation:05_big_environments:08_optimization#check_mycnf_settings|Optimization and troubleshooting]]" for checking the ''my.cnf'' file. ''my.cnf'' ファイルのチェックには、"[[:ja:documentation:05_big_environments:08_optimization#mycnf_設定の確認|最適化と問題解決]]" も参照してください。 * Start the MySQL service: * MySQL サービスを起動します。 systemctl start mysql or: または、 service mysqld start * Verify the version installed with: * インストールされたバージョンを確認します。 mysql --version You will get an answer similar to the following: 次のような出力が見られます。 mysql Ver 8.0.28-19 for Linux on x86_64 (Percona Server (GPL), Release 19, Revision 31e88966cd3) * Now use MySQL's own command line and: * Delete the ''pandora'' database. * Create a new ''pandora'' database. * Open the ''pandora'' database and import the schema found in the PFMS Web Console. * Import the data that special MySQL 8 compatible backup. * 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; * Start the PFMS server and the PFMS Software Agent: * Pandora FMS サーバおよび Pandora FMS ソフトウエアエージェントを起動します。 /etc/init.d/pandora_server start /etc/init.d/pandora_agent_daemon start * Start the Apache web server: * Apache web サーバを起動します。 systemctl start httpd.service Either: または、 /etc/init.d/httpd start [[ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]]