文档首页/ MapReduce服务 MRS/ 组件操作指南(LTS版)/ 使用ClickHouse/ ClickHouse常见问题/ ClickHouse长时间并发满,导致不可服务,如何快速恢复
更新时间:2024-12-11 GMT+08:00

ClickHouse长时间并发满,导致不可服务,如何快速恢复

问题描述

ClickHouse并发满,新的请求无法执行,影响服务的可用性,报错信息如下:

DB::Exception: Too many simultaneous queries. Maximum: 100

处理步骤

  1. 登录ClickHouse客户端节点,连接报错的服务端,具体请参考ClickHouse客户端使用实践
  2. 执行如下命令查看正在执行的SQL任务,查看当前的并发数:

    select count(*) from system.processes;

    确认获得值大于等于100。

  3. 执行如下命令结束正在执行的查询类大SQL:

    kill query where query_kind='Select' and elapsed > 60;

  4. 等待30秒后,执行如下命令统计正在执行的sql任务:

    select count(*) from system.processes;

    确认获取值小于60。

  5. 若并发数仍然大于60,登录Manager页面,选择“集群 > 服务 > ClickHouse > 实例”,勾选报错的ClickHouseServer实例,选择“更多 > 重启实例”。