跳转到主要内容
clickhousectl 是 ClickHouse 的 CLI,适用于本地和云端。 使用 clickhousectl,你可以:
  • 安装和管理本地 ClickHouse 版本
  • 启动和管理本地 ClickHouse 服务器
  • 在 ClickHouse 服务器上执行查询
  • 设置 ClickHouse Cloud 并创建由云端托管的 ClickHouse 集群
  • 管理 ClickHouse Cloud 资源
  • 将官方 ClickHouse agent 技能安装到受支持的代码智能体中
  • 将本地 ClickHouse 开发推送到云端
clickhousectl 可帮助开发者和 AI 智能体使用 ClickHouse 进行开发。

安装

快速安装

安装脚本会下载适用于你所用操作系统的正确版本,并将其安装到 ~/.local/bin/clickhousectl。为方便使用,还会自动创建一个 chctl 别名。

要求

本地

安装和管理 ClickHouse 版本

clickhousectlGitHub Releases 下载 ClickHouse 二进制文件。

ClickHouse 二进制文件存储

ClickHouse 二进制文件存放在全局存储库中,因此可供多个项目共享使用,无需重复占用存储空间。二进制文件存放在 ~/.clickhousectl/ 中:

初始化项目

init 会在你当前的工作目录中初始化适用于 ClickHouse 项目文件的标准文件夹结构。此步骤是可选的;如果你愿意,也可以使用自己的文件夹结构。 它会创建以下结构:

执行查询

创建和管理 ClickHouse 服务器

启动并管理 ClickHouse 服务器实例。每个服务器都会在 .clickhousectl/servers/<name>/data/ 下拥有各自独立的数据目录。
**服务器命名:**如果不使用 --name,第一个服务器的名称为 “default”。如果 “default” 已在运行,则会生成一个随机名称 (例如 “bold-crane”) 。如果需要可反复启动/停止的固定标识,请使用 --name **端口:**默认端口为 HTTP 8123 和 TCP 9000。如果这些端口已被占用,系统会自动分配空闲端口并在输出中显示。使用 --http-port--tcp-port 可显式指定端口。

项目本地数据目录

所有服务器数据都存放在项目目录中的 .clickhousectl/ 内:
每个具名服务器都有各自的数据目录,因此服务器之间完全隔离。数据会在重启后保留——按名称停止并重新启动服务器,即可从上次离开的地方继续。使用 clickhousectl local server remove <name> 可永久删除某个服务器的数据。

身份验证

使用 OAuth (基于浏览器) 或 API 密钥对 ClickHouse Cloud 进行身份验证。

OAuth 登录 (推荐)

这会打开浏览器,通过 OAuth device flow 进行身份验证。令牌会保存到 .clickhousectl/tokens.json (仅限当前项目目录) 。

API 密钥/Secret

凭据会保存在 .clickhousectl/credentials.json 中 (仅当前项目) 。 你也可以使用环境变量:
或者也可以通过任意命令的标志直接传入凭据:

认证状态与退出登录

凭据解析顺序:CLI 参数 > OAuth 令牌 > .clickhousectl/credentials.json > 环境变量。

Cloud

通过 API 管理 ClickHouse Cloud 服务。

组织

服务

服务创建选项

查询端点管理

专用终结点管理

Backup 配置

Backup

成员

邀请

活动

JSON 输出

使用 --json 标志输出 JSON 格式的响应。

技能

ClickHouse/agent-skills 安装 ClickHouse 官方 Agent Skills。

非交互式标志

最后修改于 2026年6月19日