色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql查看什么進程鎖表

錢瀠龍2年前11瀏覽0評論

在MySQL數據庫中,有時候會出現表被鎖住無法操作的情況。這時候我們需要查看哪個進程鎖住了這張表,才能解決該問題。

使用MySQL提供的內置工具可以方便地查看到當前所有正在執行的進程和線程,并且能夠查詢和檢視每個進程或線程的詳細信息,也就是說可以很容易的找到占用表的進程。具體的操作如下:

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 8.0.27 MySQL Community Server - GPL
mysql>show processlist;
+------+-----------------+------------------+---------------+---------+------+----------------------+
| Id   | User            | Host             | db            | Command | Time | State                |
+------+-----------------+------------------+---------------+---------+------+----------------------+
| 2815 | system user     |                  | NULL          | Daemon  | NULL | Waiting for next activation |
| 2814 | system user     |                  | NULL          | Daemon  | NULL | Waiting for next activation |
| 2813 | system user     |                  | NULL          | Daemon  | NULL | Waiting for next activation |
| 2812 | system user     |                  | NULL          | Daemon  | NULL | Waiting for next activation |
| 2811 | system user     |                  | NULL          | Daemon  | NULL | Waiting for next activation |
| 2736 | root            | localhost        | employees     | Query   | 0    | executing            |
| 2836 | root            | localhost        |               | Query   | 0    | starting             |
| 2837 | root            | localhost        |               | Query   | 0    | Sleep                |
+------+-----------------+------------------+---------------+---------+------+----------------------+
8 rows in set (0.00 sec)

可以看到,執行了show processlist命令之后,我們就能夠看到當前所有正在執行的進程和線程了。其中,db顯示該進程當前正在操作的數據庫,而State則顯示進程當前的狀態。如果一個進程的狀態一直為“executing”,則說明該進程一直在占用某張表。

如果要查看某個正在占用的進程或者線程的詳細信息,可以使用如下命令:

mysql>select * from information_schema.processlist where id=進程id;

其中,進程id為查看到的某個進程的ID,會顯示該進程執行的具體SQL語句等詳細信息。