ファイル記述子
MySQLサーバを実行するにはファイル記述子が必要であり、デフォルト値では不十分です。
これらを使用して、新しい接続を開いたり、テーブルをキャッシュに格納したり、複雑なクエリを解決するための一時テーブルを作成したり、永続的なテーブルにアクセスしたりします。mysqldが必要なときに新しいファイルを開くことができない場合、正常に機能しなくなる可能性があります。この問題の一般的な現象は、エラー24「開いているファイルが多すぎます」です。 mysqldが同時に開くことができるファイル記述子の数は、 open_files_limit
構成ファイルに設定されたオプション (/etc/my.cnf
)。でも…。 open_files_limit
オペレーティングシステムの制限によっても異なります。この依存関係により、変数の設定がより複雑になります。
MySQLカセツテイテキナイ open_files_limit
オプションがで指定されている値よりも大きい ulimit 'open files'
。したがって、必要に応じてMySQLがファイルを開くことができるように、これらの制限をオペレーティングシステムレベルで明示的に設定する必要があります。Linuxでファイル制限を確認するには、次の2つの方法があります。
-
。
ulimit
コマンドを実行すると、許可またはロックされているパラメータの詳細な概要がすばやく表示されます。このコマンドを実行して行った変更は永続的ではなく、システムのリブート後に消去されます。 -
に対する変更
/etc/security/limit.conf
ファイルは永続的であり、システムの再起動の影響を受けません。
ユーザmysqlのハードリミットとソフトリミットの両方を変更してください。構成からの抜粋を次に示します。
mysql hard nofile 65535 mysql soft nofile 65353
並行して、 my.cnf
開いているファイル制限を完全に使用するには。