web-dev-qa-db-ja.com

mysqlテーブルのオープンキャッシュを増やしますか?

この変数をゆっくりと増やすのが最善であるとよく読んでいます。誰かが理由を説明できますか?私のステータスは、それを増やす必要があることを示しています...ベストプラクティス/「ゆっくり」とは何ですか?

ありがとう!

7
JShean

innodb_file_per_table を有効にしてInnoDBを使用しているため、 innodb_open_files これは、.ibdファイルの開いているファイルハンドルの数を決定するためです。

MySQL 5.6では、この設定は少し異なります。

この変数は、複数のInnoDBテーブルスペースを使用する場合にのみ関係します。 MySQLが一度に開いておくことができる.ibdファイルの最大数を指定します。最小値は10です。MySQL5.6.6以降では、innodb_file_per_tableが有効になっていない場合のデフォルト値は300で、それ以外の場合のデフォルト値は300とtable_open_cacheです。 5.6.6より前は、デフォルト値は300です。

.ibdファイルに使用されるファイル記述子は、InnoDBテーブル専用です。これらは--open-files-limitサーバーオプションで指定されたものとは独立しており、テーブルキャッシュの操作には影響しません。一般的なI/Oチューニングのアドバイスについては、セクション8.5.7「InnoDBディスクI/Oの最適化」を参照してください。

以下は、innodb_open_filesの設定に関する MySQL Performance Blogからの追加リファレンス です。

innodb_open_files を大きな数に上げることはそれほど面倒なことではないはずですが、選択する数については賢明にしてください。

4
RolandoMySQLDBA