有什么方法可以杀死ClickHouse中的空闲查询?我有一个永远不会完成的OPTIMIZE查询(因为它针对ReplicatedMergeTree表运行)阻止了我需要删除的表。
我通常跑
SELECT query_id, query FROM system.processes;
Run Code Online (Sandbox Code Playgroud)
查找正在运行的查询。从该列表中,我找到query_id了我想杀死然后执行的查询
KILL QUERY WHERE query_id = '<id>';
Run Code Online (Sandbox Code Playgroud)
更多信息可以在关于 KILL QUERY 的文档中找到
要杀死 Mutation,有类似的KILL MUTATION.
是的,有一个replace_running_query选项。
简而言之,您可以query_id在HTTP请求中添加一个参数,如下所示:
http://localhost:8123/?query=SELECT * FROM system.numbers LIMIT 100000000& replace_running_query=1&query_id=example
然后执行第二个HTTP请求,使用相同的命令query_id:
http://localhost:8123/?query=SELECT 1&replace_running_query=1&query_id=example
服务器将取消第一个查询,然后运行第二个查询。
您可以在配置文件中覆盖该选项(默认情况下处于禁用状态),以免将其放置在请求参数中。
| 归档时间: |
|
| 查看次数: |
2495 次 |
| 最近记录: |