課題
- 前提条件
- MySQLサーバーのインストールと設定
- MySQL設定ファイル(my.ini)の編集
- MySQLデータの保存に関する推奨事項
- MySQLデータとテンポラリフォルダを専用ボリューム(パーティション)に移動する
解決方法
前提条件
- OSが必要な場合は、Microsoft .NET Framework バージョン4をインストールする。
MySQLサーバのインストールと設定
-
Windows用のMySQLサーバのインストールファイルをダウンロードし、インストールファイルを実行する。
-
Choosing a Setup Type画面で、Server-onlyを選択し、Nextをクリックする。
-
MySQLインストーラを、Type and Networking画面に達するまで続ける。画面の [Config Type] フィールドで、[Dedicated Computer] を選択します。Connectivity] で、希望のポート番号を入力し(またはあらかじめ選択されているデフォルトのポートを使用し)、[Next] をクリックします。
-
Authentication Method(認証方法)]画面で、希望の認証方法を選択し、[Next(次へ)]をクリックします。
-
Accounts and Roles画面で、MySQL Root Passwordを設定します。MySQLデータベース管理ユーザを追加する:Add Userをクリックし、名前を入力し、DB Adminロールを選択し、ユーザのパスワードを設定し、OKをクリックします。Nextをクリックします。
-
Windows Service画面で、Configure MySQL Server as a Windows ServiceとStart the MySQL Server at System Startupの横にあるチェックボックスを選択し、Next をクリックします。
-
Server File Permissions画面で、Yesで始まるオプションを選択し、フルアクセスを許可して Next をクリックする。
-
Apply Configuration画面で、Execute をクリックします。
-
Finish をクリックする。
-
Next →Finish をクリックする。
MySQL 設定ファイル (my.ini) の編集
-
現在の MySQL 設定ファイル
(my.ini) をバックアップする。このファイルは通常、C:¥ProgramData¥MySQL¥MySQL Server {version}にあります。 -
my.iniファイルを開きます。以下のパラメータを探し、その値を以下のように変更する。パラメータが存在しない場合は、ファイルの最後に追加します。共通(MySQL 5 および 8)
open_files_limitを少なくとも30000に設定する。innodb_flush_log_at_trx_commitを 0 に設定する。innodb_buffer_pool_size-setto 80% of available RAM (minimum 1 GB); 例: 16GB RAM のサーバーの場合:innodb_buffer_pool_size=12Gmax_connections=300slow-query-log=0local_infile=1wait_timeout=900disable-log-bin(バイナリログを無効にする。)
MySQL 8
innodb_redo_log_capacity をinnodb_buffer_pool_sizeの値に設定する。MySQL 5
innodb_log_file_size をinnodb_buffer_pool_sizeの値の 50% に設定する。event_scheduler=ON
-
my.iniファイルに変更を保存し、MySQLサービスを再起動する。サービスを再起動するには、コマンドプロンプトを管理者として実行し、以下のコマンドを実行する:net stop mysql net start mysqlMySQLサービスが実行されているかどうかを確認するには、次のコマンドを実行する:
sc query mysqlmysqlをサービス名に置き換えてください。たとえば、mysql80(MySQL 8.0)またはmysql57(MySQL 5.7)などです。
MySQL データストレージの推奨事項
MySQL データベースは、ESET Inspect Server の重要なコンポーネントであり、かなりのディスク容量を占有します。オペレーティングシステムの安定性を確保し、パフォーマンスを維持するために、MySQL データとテンポラリフォルダを専用のボリューム(パーティション)または 別サーバー に移動することをお勧めします。
ESET Inspect On-Prem は以下の場所のディスクスペースを監視します:
- MySQL データフォルダ- MySQL が ESET Inspect データベースを保存する場所
(my.iniのdatadir) - MySQL テンポラリフォルダ- MySQL がテンポラリテーブルを保存する場所(
my.iniのtmpdir) - ESET Inspect Server データフォルダ-通常、
C:¥ProgramData¥ESET¥Inspect Server¥Serverにあります。
MySQL データベースが ESET Inspect Server と同じマシン上で動作している場合、ESET Inspect On-Prem は以下の場合に新しいイベントの受け入れを停止します:
- MySQLデータフォルダがあるディスクの空き容量が3%未満になった場合
- ディスク上の MySQL テンポラリフォルダの空き容量が 3%未満
- ディスク上の ESET Inspect Server データフォルダの空き容量が 5% 未満になった場合
ESET Inspect ServerのデータフォルダとMySQLの一時フォルダが同じディスクを共有している場合、ディスクの空き容量が10%を下回ると、ESET Inspect On-Premは新しいイベントの受け入れを停止します。
MySQLデータベースがESET Inspect On-Premと同じマシンでホストされている場合、パージプロセスが正しく機能するように、MySQLテンポラリフォルダを含むディスクに少なくとも10%の空き容量を確保してください。パージ関連の問題は、ESET Inspect On-Premのダッシュボードの イベントロードタブにある、コンピュータごとに処理および保存されたイベントのチャートに赤いマーカーで表示されます。
MySQL データと一時フォルダを専用ボリューム(パーティション)に移動する
-
MySQL サーバをホストしているマシンに専用ボリューム(パーティション)があることを確認します。
-
MySQL サービスを停止します。サービスを停止するには、コマンドプロンプトを管理者として実行し、以下のコマンドを実行する:
net stop mysqlMySQL サービスが実行されているかどうかを確認するには、次のコマンドを実行します:
sc query mysqlmysqlをサービス名に置き換えてください(例:mysql80(MySQL 8.0)またはmysql57(MySQL 5.7)など)。 -
MySQL データフォルダを専用ボリューム(パーティション)、たとえば
E: \に移動します。データフォルダは通常、C:¥ProgramData¥MySQL¥MySQL Server {version}¥Dataにあります。その場所を確認するには、一般的にC:³ProgramData ³MySQL ³MySQL Server {version}にある MySQL 構成ファイル(my.ini)を開き、場所のパスを指定するdatadirを検索します。 -
my.iniファイルを開き、datadirをMySQLデータフォルダの新しい場所を指すように更新する。 -
MySQL データフォルダをネットワークサービスからアクセスできるようにします。これは、Windows で MySQL サービスを起動して正しく機能させるために必要です:
-
MySQL データフォルダの新しい場所に移動します。
-
データフォルダを右クリックし、プロパティを選択します。
-
Data Propertiesウィンドウで、Securityタブをクリックする。
-
Edit →Add をクリックする。
-
Enter the object names to selectフィールドに
Network Serviceと入力し、Check Names をクリックする。名前に下線が引かれ、認識されていることが示されます。OK]をクリックする。 -
グループまたはユーザー名]で[NETWORK SERVICE]を選択した状態で、[フルコントロールを 許可]のチェックボックスを選択し、[OK]→[OK]をクリックする。
-
-
MySQL 一時フォルダを移動または作成する:
-
MySQL のテンポラリフォルダがすでにある場合は、専用のボリューム(パーティション)、たとえば
E:™に移動します。そうでない場合は、フォルダを作成します(例:E:˶MySQLTemp)。テンポラリフォルダは MySQL データフォルダ内に置くべきではありませんが、同じボリューム(パーティション)または利用可能であれば別のボリューム(パーティション)に置くことができます。 -
my.iniファイルを開き、tmpdir変数が存在するかどうかを確認する。存在しない場合は、[mysqld]の下に変数を追加する。tmpdir を新しいテンポラリ・フォルダを指すように設定します(例:tmpdir=E:˶MySQLTemp)。
-
-
my.iniファイルに変更を保存し、MySQLサービスを開始します。サービスを開始するには、コマンドプロンプトを管理者として実行し、以下のコマンドを実行します:net start mysqlMySQL サービスが実行されているかどうかを確認するには、次のコマンドを実行します:
sc query mysqlmysqlをサービス名に置き換えてください。たとえば、インストールに応じて、mysql80(MySQL 8.0)またはmysql57(MySQL 5.7)です。