Skip to main content
Enterprise applications
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

MySQLフアイルキシユツシ

共同作成者

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 開いているファイル制限を完全に使用するには。