本文原創地址在博客園:https://www.cnblogs.com/f-ck-need-u/p/7742153.htmlhtml
show processlist和show full processlistmysql
processlist命令的輸出結果顯示了有哪些線程在運行,不只能夠查看當前全部的鏈接數,還能夠查看當前的鏈接狀態幫助識別出有問題的查詢語句等。sql
若是是root賬號,能看到全部用戶的當前鏈接。若是是其餘普通賬號,則只能看到本身佔用的鏈接。showprocesslist只能列出當前100條。若是想所有列出,能夠使用SHOW FULL PROCESSLIST命令數據庫
mysql> show processlist;
+----+------+--------------------+------+---------+-------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info | +----+------+--------------------+------+---------+-------+-------+------------------+ | 1 | root | localhost | NULL | Sleep | 12 | | NULL | | 2 | root | 192.168.100.1:7437 | test | Sleep | 8035 | | NULL | | 3 | root | 192.168.100.1:7438 | NULL | Sleep | 24348 | | NULL | | 5 | root | 192.168.100.1:7443 | NULL | Sleep | 24317 | | NULL | | 7 | root | 192.168.100.1:7450 | test | Sleep | 24272 | | NULL | | 9 | root | 192.168.100.1:5152 | test | Query | 0 | init | show processlist | +----+------+--------------------+------+---------+-------+-------+------------------+ 6 rows in set mysql> show full processlist; +----+------+--------------------+------+---------+-------+-------+-----------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+--------------------+------+---------+-------+-------+-----------------------+ | 1 | root | localhost | NULL | Sleep | 19 | | NULL | | 2 | root | 192.168.100.1:7437 | test | Sleep | 8042 | | NULL | | 3 | root | 192.168.100.1:7438 | NULL | Sleep | 24355 | | NULL | | 5 | root | 192.168.100.1:7443 | NULL | Sleep | 24324 | | NULL | | 7 | root | 192.168.100.1:7450 | test | Sleep | 24279 | | NULL | | 9 | root | 192.168.100.1:5152 | test | Query | 0 | init | show full processlist | +----+------+--------------------+------+---------+-------+-------+-----------------------+ 6 rows in set
各個列的含義:ruby
①.id列,用戶登陸mysql時,系統分配的"connection_id",能夠使用函數connection_id()查看
②.user列,顯示當前用戶。若是不是root,這個命令就只顯示用戶權限範圍的sql語句
③.host列,顯示這個語句是從哪一個ip的哪一個端口上發的,能夠用來跟蹤出現問題語句的用戶
④.db列,顯示這個進程目前鏈接的是哪一個數據庫
⑤.command列,顯示當前鏈接的執行的命令,通常取值爲休眠(sleep),查詢(query),鏈接(connect)等
⑥.time列,顯示這個狀態持續的時間,單位是秒
⑦.state列,顯示使用當前鏈接的sql語句的狀態,很重要的列。state描述的是語句執行中的某一個狀態。一個sql語句,以查詢爲例,可能須要通過copying to tmp table、sorting result、sending data等狀態才能夠完成
⑧.info列,顯示這個sql語句,是判斷問題語句的一個重要依據函數
在主從複製環境中,show processlist或show full processlist對於判斷狀態頗有幫助,例以下面的state列:post