このトピックでは、SQL クエリを管理するのに役立つ ApsaraDB for SelectDB によって提供されるクエリ終了機能について説明します。
概要
ApsaraDB for SelectDB の各クエリは、セッション接続で実行されています。セッション接続を終了する必要がある場合は、ApsaraDB for SelectDB によって提供されるクエリ終了機能を使用できます。
方法
セッション接続を終了するには、KILL ステートメントを実行します。この方法では、セッション接続で実行されているクエリも終了します。すべてのセッション接続の ID を表示するには、SHOW PROCESSLIST コマンドを実行します。 SELECT CONNECTION_ID() コマンドを実行して、現在のセッション接続の ID をクエリすることもできます。
構文:
KILL [CONNECTION | QUERY] processlist_id例
次のコードは、現在のセッション接続の ID をクエリする方法の例を示しています。
SELECT connection_id();
+-----------------+
| connection_id() |
+-----------------+
| 48 |
+-----------------+
1 row in set (0.00 sec)次のコードは、すべてのセッション接続の ID をクエリする方法の例を示しています。
SHOW PROCESSLIST;
+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
| CurrentConnected | Id | User | Host | LoginTime | Catalog | Db | Command | Time | State | QueryId | Info |
+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
| Yes | 48 | root | 10.16.xx.xx:44834 | 2023-12-29 16:49:47 | internal | test | Query | 0 | OK | e6e4ce9567b04859-8eeab8d6b5513e38 | SHOW PROCESSLIST |
| | 50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | internal | | Sleep | 1837 | EOF | deaf13c52b3b4a3b-b25e8254b50ff8cb | SELECT @@session.transaction_isolation |
| | 51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | internal | | Sleep | 907 | EOF | 437f219addc0404f-9befe7f6acf9a700 | /* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS |
| | 55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | internal | test | Sleep | 271 | EOF | f02603dc163a4da3-beebbb5d1ced760c | /* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT DATABASE() |
| | 47 | root | 10.16.xx.xx:35678 | 2023-12-29 16:21:56 | internal | test | Sleep | 3528 | EOF | f4944c543dc34a99-b0d0f3986c8f1c98 | select * from test |
+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
5 rows in set (0.00 sec)実行中のクエリを終了すると、返された結果にクエリが終了したことが示されます。次のコードは例を示しています。
KILL QUERY 55;
Query OK, 0 rows affected (0.01 sec)