Spec-Zone .ru
спецификации, руководства, описания, API
|
When you are attempting to ascertain what your MySQL server is doing, it can be helpful to examine the process list, which is the set of threads currently executing within the server. Process list information is available from these sources:
The SHOW [FULL] PROCESSLIST
statement: Section
13.7.5.30, "SHOW PROCESSLIST
Syntax"
The SHOW
PROFILE
statement: Section 13.7.5.32, "SHOW PROFILES
Syntax"
The INFORMATION_SCHEMA
PROCESSLIST
table: Section
20.16, "The INFORMATION_SCHEMA PROCESSLIST
Table"
The mysqladmin processlist command: Section 4.5.2, "mysqladmin — Client for Administering a MySQL Server"
The performance_schema.threads
table: Section 21.9.9, "Performance Schema
Miscellaneous Tables"
Access to threads
does not require a mutex and has minimal impact on server performance. INFORMATION_SCHEMA.PROCESSLIST
and SHOW PROCESSLIST
have negative performance consequences because they require a
mutex. threads
also shows information about background threads, which INFORMATION_SCHEMA.PROCESSLIST
and SHOW PROCESSLIST
do not. This means that threads
can be used to monitor activity the other thread information sources
cannot.
You can always view information about your own threads. To view information about threads being executed for
other accounts, you must have the PROCESS
privilege.
Each process list entry contains several pieces of information:
Id
is the connection identifier for the client
associated with the thread.
User
and Host
indicate the
account associated with the thread.
db
is the default database for the thread, or NULL
if none is selected.
Command
and State
indicate
what the thread is doing.
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.
Time
indicates how long the thread has been in its
current state. The thread's notion of the current time may be altered in some cases: The thread can
change the time with SET TIMESTAMP =
. For a thread running on a slave that is
processing events from the master, the thread time is set to the time found in the events and thus
reflects current time on the master and not the slave. value
Info
contains the text of the statement being executed
by the thread, or NULL
if it is not executing one. By default, this value
contains only the first 100 characters of the statement. To see the complete statements, use SHOW FULL PROCESSLIST
.
The following sections list the possible Command
values, and State
values grouped by category. The meaning for some of these values is self-evident. For others, additional
description is provided.