跳到主要内容
跳到主要内容

故障排除

安装

使用 apt-key 无法从 keyserver.ubuntu.com 导入 GPG 密钥

apt-key 功能已被高级包工具 (APT) 弃用。用户应改用 gpg 命令。请参阅安装指南文章。

使用 gpg 无法从 keyserver.ubuntu.com 导入 GPG 密钥

  1. 查看你的 gpg 是否已安装:

使用 apt-get 无法从 ClickHouse 仓库获取 deb 包

  1. 检查防火墙设置。
  2. 如果由于某种原因无法访问仓库,请按照安装指南中的说明下载软件包,并使用 sudo dpkg -i <packages> 命令手动安装它们。你还需要 tzdata 包。

使用 apt-get 无法从 ClickHouse 仓库更新 deb 包

当 GPG 密钥发生更改时,可能会出现此问题。

请使用设置页面中的手册更新仓库配置。

使用 apt-get update 时收到不同的警告

完整的警告信息如下所示:

要解决上述问题,请使用以下脚本:

因签名错误无法使用 Yum 获取软件包

可能的问题:缓存错误,也许是在 2022-09 更新 GPG 密钥后损坏。

解决方案是清除 Yum 的缓存和 lib 目录:

之后请参阅安装指南

连接到服务器

可能的问题:

  • 服务器未运行。
  • 配置参数意外或错误。

服务器未运行

检查服务器是否运行

如果服务器未运行,请使用以下命令启动它:

检查日志

clickhouse-server 的主要日志默认在 /var/log/clickhouse-server/clickhouse-server.log 中。

如果服务器成功启动,你应该看到以下字符串:

  • <Information> Application: starting up. — 服务器已启动。
  • <Information> Application: Ready for connections. — 服务器正在运行并准备接受连接。

如果 clickhouse-server 因配置错误而启动失败,你应该看到带有错误描述的 <Error> 字符串。例如:

如果你在文件末尾没有看到错误,请从字符串开始浏览整个文件:

如果你尝试在服务器上启动第二个 clickhouse-server 实例,会看到以下日志:

查看 system.d 日志

如果你在 clickhouse-server 日志中找不到任何有用的信息,或者没有日志,可以使用以下命令查看 system.d 日志:

在交互模式下启动 clickhouse-server

此命令将以交互应用程序的形式启动服务器,并使用自动启动脚本的标准参数。在此模式下,clickhouse-server 会在控制台中打印所有事件消息。

配置参数

检查:

  1. Docker 设置:

    • 如果你在 IPv6 网络中运行 ClickHouse,请确保设置 network=host
  2. 端点设置。

  3. HTTP 协议设置:

    • 检查 HTTP API 的协议设置。
  4. 安全连接设置。

    • 检查:
    • 使用合适的参数进行连接。例如,使用 clickhouse_clientport_secure 参数。
  5. 用户设置:

    • 你可能使用了错误的用户名或密码。

查询处理

如果 ClickHouse 无法处理查询,它会将错误描述发送给客户端。在 clickhouse-client 中,你将在控制台上看到错误描述。如果你使用的是 HTTP 接口,ClickHouse 会将错误描述发送到响应体中。例如:

如果你使用 stack-trace 参数启动 clickhouse-client,ClickHouse 将返回服务器的堆栈跟踪及错误描述。

你可能会看到有关断开连接的消息。在这种情况下,你可以重复查询。如果在每次执行查询时连接都断开,请检查服务器日志以查找错误。

查询处理的效率

如果你发现 ClickHouse 工作过慢,你需要分析服务器资源和网络的负载以优化你的查询。

你可以使用 clickhouse-benchmark 工具来分析查询性能。它显示每秒处理的查询数量、每秒处理的行数以及查询处理时间的百分位数。