云数据仓库 ClickHouse 本身提供两种客户端接口,分别基于 HTTP 和 TCP 协议。
基于 HTTP 协议
主要用来支持轻量级的简单操作,方便跨平台和编程语言。ClickHouse集群内的 clickhouse-server
进程会启动8123的 HTTP 服务,可以发送简单的 GET 请求检查服务是否正常。
还可以通过 query 参数发送请求,例如查询 demodb 中 account 表的数据。
其他具体用法可参考官方文档 HTTP Interface。
基于 TCP 协议
主要在 clickhouse-client 端使用,在云数据仓库ClickHouse集群内或是 安装有 clickhouse-client并且跟ClickHouse集群节点网络相通的机器上输入 clickhouse-client 命令,会输出版本信息、连接到的 clickhouse-server 节点、默认使用的数据库等。可以通过 quit、exit 或 q 等退出使用。
$ clickhouse-client ClickHouse client version 23.8.9.1. Connecting to 127.0.0.1:9000 as user default. Connected to ClickHouse server version 23.8.9 revision 54465. |
clickhouse-client 使用的主要参数:
参数 |
说明 |
-C --config-file |
指定客户端使用的配置文件 |
-h --host |
指定 clickhouse-server 的 IP |
--port |
指定 clickhouse-server 的端口 |
-u --user |
用户名 |
--password |
密码 |
-d --database |
数据库名称 |
-V --version |
查看客户端版本 |
-E --vertical |
查询结果按照垂直格式显示 |
-q --query |
非交互模式下传入的 SQL 语句 |
-t --time |
非交互模式下显示执行时间 |
--log-level |
客户端日志级别 |
--send_logs_level |
指定服务端返回日志数据的级别 |
--server_logs_file |
指定服务端日志保存路径 |
其他具体参数可参考官方文档 Command-line Client。