SHOW OPEN TABLES [{FROM | IN}db_name
] [LIKE 'pattern
' | WHEREexpr
]
SHOW OPEN
TABLES
は、現在テーブルキャッシュ内で開かれている非
TEMPORARY
テーブルをリストします。詳しくは項4.4.7. 「MySQL でのテーブルのオープンとクローズの方法」を参照してください。Extensions to SHOW
Statements
で説明されているように、WHERE
節を指定すると、より一般的な条件を使用して行を選択できます。
MySQL 5.1.24
からは、FROM
節と
LIKE
節を使用できます。LIKE
節 (存在する場合)
は、どのテーブル名と照合するかを示します。FROM
節 (存在する場合) は、表示されるテーブルを
db_name
データベース内に存在するテーブルに制限します。
SHOW OPEN
TABLES
は、次のカラムを返します。
Database
テーブルを含むデータベース
テーブル
テーブル名。
In_use
このテーブルのテーブルロックまたはロック要求の数。たとえば、1
つのクライアントが LOCK
TABLE t1 WRITE
を使用してテーブルのロックを取得した場合、In_use
は 1 になります。
このテーブルのロック中に別のクライアントが
LOCK TABLE t1 WRITE
を発行すると、このクライアントはロックの待機でブロックされますが、このロック要求によって
In_use
は 2
になります。このカウントが 0
の場合、このテーブルは開いていますが、現在使用されていません。In_use
はまた、HANDLER
... OPEN
ステートメントによって増加し、HANDLER
... CLOSE
ステートメントによって減少します。
Name_locked
テーブル名がロックされているかどうかを示します。名前のロックは、テーブルの削除や名前の変更などの操作に使用されます。