mysqladmin status
を実行すると、以下の出力が表示されます。
Uptime: 426 Running threads: 1 Questions: 11082 Reloads: 1 Open tables: 12
テーブルが 6 つしかない場合に Open
tables
値が 12
と表示されることに、当惑する場合もあります。
MySQL
はマルチスレッド化されているため、多数のクライアントが同時に同じものに対してクエリを使用することがあります。2
つのクライアントスレッドで 1
つのファイルに異なるステータスが発生する問題を最小にするため、同時に実行しているスレッドがそれぞれで無関係にテーブルを開きます。これはメモリの消費を増やしますが、一般にパフォーマンスは向上します。ISAM
テーブルと MyISAM
テーブルの場合は、テーブルを開いたそれぞれのクライアントにデータファイルに対するファイル記述子が必要になります。このテーブル型では、インデックスファイルに対するファイル記述子がすべてのスレッドで共有されます。
次のセクションでもこのトピックについてさらに説明します。 See 項5.4.7. 「MySQL でのテーブルのオープンとクローズの方法」。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.