首页/网络/常用端口速查/8123 ClickHouse HTTP 接口
8000-8999 注册端口65 条

8123 ClickHouse HTTP 接口

列式数据库 ClickHouse 的双入口之一:HTTP 查询在 8123(浏览器就能提交 SQL),原生 TCP 协议走 9000。

常用端口速查网络更新于 2026-10-13

ClickHouse HTTP 接口

8123 是列式数据库 ClickHouse 的 HTTP 接口端口。除了原生的 TCP 协议(9000)之外,ClickHouse 还提供 HTTP 入口:用 curl 或浏览器就能提交 SQL,结果以文本或 JSON 返回,数据导入与外部系统集成也常走这条通道,不必引入原生客户端。

基本信息

服务ClickHouse HTTP 接口
协议TCP/HTTP 8123,原生协议 9000
用途OLAP 查询、数据导入、外部系统集成
默认用户default,默认允许任意地址且无口令
安全等级仅数据网段

典型使用场景

  • 用 curl 或浏览器直接提交 SQL 做临时查询
  • 以 CSV 或 TSV 流式导入数据
  • 报表与外部系统通过 HTTP 接口对接,避免引入原生客户端
  • 排查连不上数据库,先分清 HTTP 端口与原生端口
  • 安全加固时确认 default 用户已设口令并限制来源网段

查询与安全配置

查询与安全配置
curl -s 'http://localhost:8123/?query=SELECT%20version()'
curl 'http://localhost:8123/' --data-binary 'SELECT count() FROM system.tables'
curl -s 'http://user:pass@localhost:8123/?query=SELECT%201'   # 带认证访问
# 收紧: users.xml 中设置 password 与 networks 网段

端口与用户配置

项目值说明
HTTP 接口8123本条目,查询与导入都在此
原生协议9000命令行客户端与驱动的默认入口
集群通信9009副本与分片之间同步使用
default 用户users.xml 配置项默认无口令且允许任意来源,必须收紧
8123 暴露公网且 default 用户空口令,会导致数据被全量导出,甚至出现库表被删除后勒索的事件。加固要同时做三件事:设置口令、限制可登录网段、把端口收进数据网段。
排查提示:HTTP 接口返回的错误信息通常比原生客户端更直白,权限或语法问题都能直接从响应里看出来。做容量对比与脚本化运行时用 HTTP 接口更方便,需要长连接与压缩时再切到原生协议。
导入导出提示:HTTP 接口可以通过参数指定 TSV、JSON 等返回格式,批量导入时优先用流式写入并控制单次请求的分片大小。一次性提交过大的请求容易触发内存限制,错误信息里通常会提示配额相关字样。

易错点

  • 空口令 default 用户对公网开放:整库数据被拖走
  • 把 8123 与 9000 混用:客户端配错端口时表现为连接超时而非认证失败,排查方向容易跑偏
  • 只改口令不改可登录网段:default 用户仍可从任意地址尝试登录
  • 集群部署漏放 9009:副本同步失败,写入看似成功但数据不完整

数据来源与参考

  • ClickHouse 官方文档(HTTP 8123 / native 9000)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌