1、列出当前在表缓存中打开的非临时表。
SHOW OPEN TABLES语法:
SHOW OPEN TABLES
[{FROM | IN} db_name]
[LIKE 'pattern' | WHERE expr]
mysql> show open tables from test like 'users';
+----------+-------+--------+-------------+
| Database | Table | In_use | Name_locked |
+----------+-------+--------+-------------+
| test | users | 0 | 0 |
+----------+-------+--------+-------------+
1 row in set (0.00 sec)
SHOW OPEN TABLES
显示打开的表输出列解释:
- Database: 数据库名称
- Table: 表名
- In_use: 表锁或锁请求的数量在表中。例如,如果一个客户机使用锁表t1写的表获得一个锁,那么In_use将是1。如果另一个客户端问题锁表t1写,而表仍然锁定,客户端将阻塞等待锁,但是锁请求导致In_use为2。如果计数为零,表是打开的,但目前没有使用。
- Name_locked: 是否锁定表名。名称锁定用于操作,例如删除或重命名表。
2、列出锁定的表
show open tables WHERE In_use > 0
例如检查tb_employees
表是否被锁定:
show open tables WHERE Table LIKE 'tb_employees' AND In_use > 0
参考:https://dev.mysql.com/doc/refman/5.6/en/show-open-tables.html
本文由 空心菜 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Apr 17, 2018 at 01:07 pm