Mysql查看和解锁被锁定的表(mysql查看被锁表)

Mysql是当前常用的关系型数据库,但是在操作这种数据库的过程中也会遇到被锁定的表,这也是很常见的问题。本文将介绍如何查看和解锁被mysql锁定的表。

通常来讲,数据库中的表是在执行查询或者操作时会被锁定,以保证在操作过程中数据的一致性。因此,我们要查看数据库中被锁定的表,首先要查看哪些表被锁定,可以执行下面的命令:

\> show tables where engine= “Innodb” and is_locked=”yes”;

该命令会返回所有被锁定的表,比如:

+—————-+

| Tables_in_database |

+—————-+

| Locked_Table |

+—————-+

上面就是数据库中被锁定的表名,然后可以用下面的命令来查看被锁定的表是哪个会话被锁定的:

\> show full processlist;

该命令会返回所有当前运行的进程,比如:

+———+———–+———+——–+———+——–+——–+

| Id | User | Host | db | Command | state| time |

+———+———–+———+——–+———+——–+——–+

| 10 | query_user | 192.168.1.1 |db_name | Query |Locked | 300s |

+———+———–+———+——–+———+——–+——–+

结果中表示,表 Locked_Table 是由 query_user 这个会话锁定的,那么就可以知道被锁定的表是哪个会话锁定的。

知道了被锁定的表是哪个会话锁定的,接下来就可以解锁该表了,可以用如下操作来解锁:

\> kill 10

用上面的操作就可以让 query_user 会话释放锁定的表 Locked_Table 了。

以上就是Mysql查看和解锁被锁定的表的方法,查看和解锁被锁定的表是维护Mysql数据库的重要操作,希望本文能够帮助Mysql用户。


数据运维技术 » Mysql查看和解锁被锁定的表(mysql查看被锁表)