(mysql.info) kill
Info Catalog
(mysql.info) flush
(mysql.info) other-administrative-sql
(mysql.info) load-index
13.5.5.3 `KILL' Syntax
......................
KILL [CONNECTION | QUERY] THREAD_ID
Each connection to `mysqld' runs in a separate thread. You can see
which threads are running with the `SHOW PROCESSLIST' statement and
kill a thread with the `KILL THREAD_ID' statement.
In MySQL 5.0.0, `KILL' allows the optional `CONNECTION' or `QUERY'
modifier:
* `KILL CONNECTION' is the same as `KILL' with no modifier: It
terminates the connection associated with the given THREAD_ID.
* `KILL QUERY' terminates the statement that the connection is
currently executing, but leaves the connection itself intact.
If you have the `PROCESS' privilege, you can see all threads. If you
have the `SUPER' privilege, you can kill all threads and statements.
Otherwise, you can see and kill only your own threads and statements.
You can also use the `mysqladmin processlist' and `mysqladmin kill'
commands to examine and kill threads.
* You cannot use `KILL' with the Embedded MySQL Server library,
because the embedded server merely runs inside the threads of the host
application. It does not create any connection threads of its own.
When you use `KILL', a thread-specific kill flag is set for the thread.
In most cases, it might take some time for the thread to die, because
the kill flag is checked only at specific intervals:
* In `SELECT', `ORDER BY' and `GROUP BY' loops, the flag is checked
after reading a block of rows. If the kill flag is set, the
statement is aborted.
* During `ALTER TABLE', the kill flag is checked before each block
of rows are read from the original table. If the kill flag was
set, the statement is aborted and the temporary table is deleted.
* During `UPDATE' or `DELETE' operations, the kill flag is checked
after each block read and after each updated or deleted row. If
the kill flag is set, the statement is aborted. Note that if you
are not using transactions, the changes are not rolled back.
* `GET_LOCK()' aborts and returns `NULL'.
* An `INSERT DELAYED' thread quickly flushes (inserts) all rows it
has in memory and then terminates.
* If the thread is in the table lock handler (state: `Locked'), the
table lock is quickly aborted.
* If the thread is waiting for free disk space in a write call, the
write is aborted with a `disk full' error message.
* *Warning*: Killing a `REPAIR TABLE' or `OPTIMIZE TABLE' operation
on a `MyISAM' table results in a table that is corrupted and
unusable. Any reads or writes to such a table fail until you
optimize or repair it again (without interruption).
Info Catalog
(mysql.info) flush
(mysql.info) other-administrative-sql
(mysql.info) load-index
automatically generated byinfo2html