文档首页
MySQL 8.4 参考手册
相关文档 下载本手册

MySQL 8.4 参考手册  /  ...  /  SHOW OPEN TABLES 语句

15.7.7.24 SHOW OPEN TABLES 语句

SHOW OPEN TABLES
    [{FROM | IN} db_name]
    [LIKE 'pattern' | WHERE expr]

SHOW OPEN TABLES 列出当前在表缓存中打开的非TEMPORARY 表。请参见 第 10.4.3.1 节,“MySQL 如何打开和关闭表”。如果存在 FROM 子句,则显示的表将限制为 db_name 数据库中的表。如果存在 LIKE 子句,则表示要匹配的表名。可以使用 WHERE 子句根据更一般的条件选择行,如 第 28.8 节,“SHOW 语句扩展” 中所述。

SHOW OPEN TABLES 输出包含以下列

  • 数据库

    包含该表的数据库。

  • 表名。

  • In_use

    显示表锁或锁请求的数量。例如,如果一个客户端使用 LOCK TABLE t1 WRITE 获取表锁,则 In_use 为 1。如果另一个客户端在表仍然被锁定时发出 LOCK TABLE t1 WRITE,则客户端会被阻塞,等待锁,但锁请求会导致 In_use 为 2。如果计数为零,则该表是打开的,但目前未被使用。 In_use 也会因 HANDLER ... OPEN 语句增加,并因 HANDLER ... CLOSE 语句减少。

  • Name_locked

    是否锁定表名。名称锁定用于删除或重命名表等操作。

如果您没有某个表的权限,则该表不会显示在 SHOW OPEN TABLES 的输出结果中。