Q100551: Red Hat/CentOS 7 または Rocky 9 に MySQL 8 をインストールする

まとめ

この記事では、 Flixセットアップの前提条件である、Red Hat/CentOS 7 または Rocky 9 サーバーに MySQL 8 を正常にインストールする手順について説明します。

詳細情報

Red Hat/CentOS 7 のデフォルトの MySQL バージョンは、MySQL 8 のMari adb バージョンです。このバージョンの MySQL は現在サポートされていません。まず MySQL 8 リポジトリをインストールし、次に MySQL 8 サーバーをインストールする必要があります。Rocky 9 では、MySQL 8 のインストール手順に進むことができます。

Red Hat/CentOS 7 に MySQL 8 リポジトリをインストールするには、ターミナルプロンプトで次のコマンドを使用します。

 sudo rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm

Red Hat/CentOS 7 に MySQL 8 Community Server をインストールするには、ターミナルで次のコマンドを入力します。

 sudo yum install mysql-community-server --nogpgcheck

Rocky 9 にインストールするには、--nogpgcheck フラグをスキップし、デフォルトの mysql-server パッケージを使用できます。

 sudo yum install mysql-server

インストールが完了したら、ターミナルで次のコマンドを入力してサーバーを起動できます。

 sudo service mysqld start 

ターミナルで次のコマンドを実行して、サービスのステータスを確認できます。

 sudo service mysqld status 

MySQL サービスを起動時に開始するように設定できるので、サーバーを再起動しても毎回手動で開始する必要がなくなります。

 sudo chkconfig mysqld on 

MySQL 8をインストールすると、データベースにアクセスするためのルートアカウントが自動的に作成されます。Red Hat/CentOS 7では一時パスワードが設定されており、ターミナルで以下のコマンドを実行することで確認できます(Rocky 9ではパスワードは空白で、ログファイルも存在しません)。

 sudo grep password /var/log/mysqld.log 

Red Hat/CentOS 7をご利用の場合は、このパスワードをメモしておいてください。MySQLにログインする際に必要になります。データベースのカスタムパスワードを作成し、MySQLのセキュリティ設定を更新するには、次のコマンドを実行します。

 mysql_secure_installation 

パスワードは、スタジオのパスワードセキュリティガイドラインに適合するものに変更できます。Red Hat/Centos 7では、MySQLのパスワードは8文字以上で、大文字、小文字、数字、特殊文字を含める必要があります。Rocky 9では、パスワードに関する要件はありません。

セキュリティ上の理由から、匿名ユーザーを削除することをお勧めします。Flix Flix匿名ユーザーを利用しません。

テスト データベースはFlixでは使用されない為、削除できます。

新しい変更を有効にするには、権限テーブルをリロードする必要があります。

同じシステム上で複数のFlixサーバーを実行している場合は、リモートでの root ログインを禁止しないでください。

リモート サーバーからの接続にまだ問題がある場合は、MySQL サーバーで次のコマンドを使用して手動でアクセスを開くことができます。

 mysql -uroot -p
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES; 

MySQL設定の更新

設定ファイル (Red Hat/CentOS 7 の場合は /etc/my.cfg、Rocky 9 の場合は /etc/my.cnf.d/mysql-server.cnf) で autoinc_lock_mode を consecutive に更新する必要があります。

 innodb_autoinc_lock_mode=1 

複数のFLIXサーバーの使用

2台以上のFlixサーバーを使用する場合は、MySQLサーバー(推奨)またはFlixサーバーを設定して、設定されたすべての接続を許可する必要があります。MySQLのデフォルト設定では、すべてのFlixサーバーからの合計接続数は150です。各Flixサーバーのデフォルト設定では、MySQLデータベースへの接続数は70です。常に1つの余分な接続を空けておいてください。MySQLの最大接続数を更新するには、サービスの設定ファイル(Red Hat/CentOS 7では/etc/my.cfg、Rocky 9では/etc/my.cnf.d/mysql-server.cnf)を更新する必要があります。

 max_connections = < desired max concurrent connections>

Flixサーバーから 70 の接続をそれぞれ使用する 3 台のサーバーがある場合、 max_connections を少なくとも 211 に設定する必要があります。211 より大きい任意の数値に設定できます。

 max_connections = 211

Flix config.ymlファイルのmysql_max_connectionsパラメータを更新することで、各Flixサーバーが作成するMySQL接続の数を調整することもできます。

 mysql_max_connections: 70

MySQLサービスを再起動する

MySQL 構成ファイルに変更を加えた後は、ターミナルからサービスを再起動する必要があります。

 sudo service mysqld restart 

さらに詳しく

ファイアウォールのポートを開く方法については、この記事Q100474-Opening-ports-on-your-firewall-for-Flix-communicationをお読みください。

Flix 6データベースのバックアップを復元する方法については、この記事Q100567-How-to-restore-a-Flix-6-database-backupをお読みください。

    私たちはそれを聞いて申し訳ございません

    理由をお聞かせください