有什么方法可以终止clickhouse中的空闲查询吗?我有一个永远不会完成的优化查询(因为它是针对replicatedmergetree表运行的)阻塞了需要删除的表。
vlurs2pr1#
是的,有一个replace\u running\u 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 服务器将取消第一个查询并运行第二个查询。您可以覆盖配置文件中的选项(默认情况下是禁用的),以避免将其放置在请求参数中。
query_id
http://localhost:8123/?query=SELECT * FROM system.numbers LIMIT 100000000& replace_running_query=1&query_id=example
http://localhost:8123/?query=SELECT 1&replace_running_query=1&query_id=example
2admgd592#
我通常跑步
SELECT query_id, query FROM system.processes;
查找正在运行的查询。从名单上我发现 query_id 我想要杀死然后执行的查询
KILL QUERY WHERE query_id = '<id>';
更多信息可以在kill query文档中找到为了杀死突变 KILL MUTATION .
KILL MUTATION
2条答案
按热度按时间vlurs2pr1#
是的,有一个replace\u running\u 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
服务器将取消第一个查询并运行第二个查询。您可以覆盖配置文件中的选项(默认情况下是禁用的),以避免将其放置在请求参数中。
2admgd592#
我通常跑步
查找正在运行的查询。从名单上我发现
query_id
我想要杀死然后执行的查询更多信息可以在kill query文档中找到
为了杀死突变
KILL MUTATION
.