Rechercher dans le manuel MySQL
13.7.6.29 SHOW PROCESSLIST Syntax
SHOW PROCESSLIST
shows which
threads are running. If you have the
PROCESS
privilege, you can see
all threads. Otherwise, you can see only your own threads (that
is, threads associated with the MySQL account that you are
using). If you do not use the FULL
keyword,
only the first 100 characters of each statement are shown in the
Info
field.
The SHOW PROCESSLIST
statement is
very useful if you get the “too many connections”
error message and want to find out what is going on. MySQL
reserves one extra connection to be used by accounts that have
the CONNECTION_ADMIN
or
SUPER
privilege, to ensure that
administrators should always be able to connect and check the
system (assuming that you are not giving this privilege to all
your users).
Threads can be killed with the
KILL
statement. See
Section 13.7.7.4, “KILL Syntax”.
Example of SHOW PROCESSLIST
output:
- *************************** 1. row ***************************
- Id: 1
- Host:
- db: NULL
- Command: Connect
- Time: 1030455
- State: Waiting for master to send event
- Info: NULL
- *************************** 2. row ***************************
- Id: 2
- Host:
- db: NULL
- Command: Connect
- Time: 1004
- Info: NULL
- *************************** 3. row ***************************
- Id: 3112
- User: replikator
- Host: artemis:2204
- db: NULL
- Command: Binlog Dump
- Time: 2144
- Info: NULL
- *************************** 4. row ***************************
- Id: 3113
- User: replikator
- Host: iconnect2:45781
- db: NULL
- Command: Binlog Dump
- Time: 2086
- Info: NULL
- *************************** 5. row ***************************
- Id: 3123
- User: stefan
- Host: localhost
- db: apollon
- Command: Query
- Time: 0
- State: NULL
SHOW PROCESSLIST
output has these
columns:
The connection identifier. This is the same type of value displayed in the
ID
column of theINFORMATION_SCHEMA
PROCESSLIST
table, thePROCESSLIST_ID
column of the Performance Schemathreads
table, and returned by theCONNECTION_ID()
function.The MySQL user who issued the statement. A value of
system user
refers to a nonclient thread spawned by the server to handle tasks internally. This could be the I/O or SQL thread used on replication slaves or a delayed-row handler. Forsystem user
, there is no host specified in theHost
column.unauthenticated user
refers to a thread that has become associated with a client connection but for which authentication of the client user has not yet been done.event_scheduler
refers to the thread that monitors scheduled events (see Section 24.4, “Using the Event Scheduler”).NoteA
User
value ofsystem user
is distinct from theSYSTEM_USER
privilege. The former designates internal threads. The latter distinguishes the system user and regular user account categories (see Section 6.2.11, “Account Categories”).The host name of the client issuing the statement (except for
system user
, for which there is no host). The host name for TCP/IP connections is reported in
format to make it easier to determine which client is doing what.host_name
:client_port
The default database, if one is selected; otherwise
NULL
.The type of command the thread is executing. For descriptions for thread commands, see Section 8.14, “Examining Thread Information”. The value of this column corresponds to the
COM_
commands of the client/server protocol andxxx
Com_
status variables. See Section 5.1.10, “Server Status Variables”.xxx
The time in seconds that the thread has been in its current state. For a slave SQL thread, the value is the number of seconds between the timestamp of the last replicated event and the real time of the slave machine. See Section 17.2.2, “Replication Implementation Details”.
An action, event, or state that indicates what the thread is doing. Descriptions for
State
values can be found at Section 8.14, “Examining Thread Information”.Most states correspond to very quick operations. If a thread stays in a given state for many seconds, there might be a problem that needs to be investigated.
For the
SHOW PROCESSLIST
statement, the value ofState
isNULL
.The statement the thread is executing, or
NULL
if it is not executing any statement. The statement might be the one sent to the server, or an innermost statement if the statement executes other statements. For example, if aCALL
statement executes a stored procedure that is executing aSELECT
statement, theInfo
value shows theSELECT
statement.
Process information is also available from the
mysqladmin processlist command, the
INFORMATION_SCHEMA
PROCESSLIST
table, and the
Performance Schema threads
table
(see Section 4.5.2, “mysqladmin — Client for Administering a MySQL Server”,
Section 25.19, “The INFORMATION_SCHEMA PROCESSLIST Table”, and
Section 26.12.18.5, “The threads Table”). In contrast to the
INFORMATION_SCHEMA
PROCESSLIST
table and
SHOW PROCESSLIST
statement, which
have negative performance consequences because they require a
mutex, access to threads
does not
require a mutex and has minimal impact on server performance.
The threads
table also shows
information about background threads, which the
PROCESSLIST
table and
SHOW PROCESSLIST
do not. This
means that threads
can be used to
monitor activity the other thread information sources cannot.
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-show-processlist.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.