要查看MySQL的表被锁了没有,首先需要进入MySQL的命令行工具:
mysql -u [用户名] -p [密码]
登陆后,在MySQL中输入以下命令可以查看MySQL的所有锁:
show processlist;
其中会列出所有正在执行的进程,如果其中有锁定的表,会列出锁定的表的信息。注意,这里的锁不仅仅指行级锁,还包括表级锁和元数据锁。如果想要查看具体的锁定信息,可以输入以下命令:
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;
这样就可以列出所有的表锁和行锁,以及锁的详细信息,比如锁的类型(共享锁或排它锁)、被锁定的对象(表或行)、锁的持有者等等。
如果想要查看某个特定表的锁定情况,可以输入以下命令:
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS WHERE TABLE_NAME='[表名]';
这样就可以列出该表的所有锁定信息。