jdbc:clickhouse
时间: 2025-07-10 07:11:20 浏览: 7
在使用 JDBC 连接 ClickHouse 数据库时,需要完成以下几个关键步骤:添加依赖、配置服务器、建立连接以及执行 SQL 查询。
### 添加 Maven 依赖
ClickHouse 提供了多种 JDBC 驱动实现。常用的两个版本分别是 `com.clickhouse:clickhouse-jdbc` 和 `ru.yandex.clickhouse:clickhouse-jdbc`。根据不同的需求可以选择以下任意一种依赖:
- 使用 `com.clickhouse` 包含的最新驱动:
```xml
<dependency>
<groupId>com.clickhouse</groupId>
<artifactId>clickhouse-jdbc</artifactId>
<version>0.7.2</version>
</dependency>
```
- 或者使用较早但稳定的 `ru.yandex.clickhouse` 版本:
```xml
<dependency>
<groupId>ru.yandex.clickhouse</groupId>
<artifactId>clickhouse-jdbc</artifactId>
<version>0.3.1</version>
</dependency>
```
以上两种方式分别适用于不同版本和场景的需求[^3]。
### 修改 ClickHouse 服务器配置
默认情况下,ClickHouse 的 HTTP 接口监听在端口 `8123`,但它可能不接受远程连接。为允许远程设备通过 JDBC(基于 HTTP)访问,需修改 `config.xml` 文件中的 `<listen_host>` 设置:
```bash
[root@master local]# vim /etc/clickhouse-server/config.xml
```
确保如下行未被注释,并设置为允许所有 IP 地址访问:
```xml
<listen_host>0.0.0.0</listen_host>
```
保存并重启 ClickHouse 服务以使更改生效[^2]。
### 建立 JDBC 连接
使用 Java 程序通过 JDBC 连接到 ClickHouse,可以采用标准的 JDBC API。以下是连接字符串的基本格式:
```java
String url = "jdbc:clickhouse://<host>:<port>/<database>";
Connection conn = DriverManager.getConnection(url, "<username>", "<password>");
```
其中:
- `<host>` 是 ClickHouse 服务器的 IP 地址;
- `<port>` 默认为 `8123`;
- `<database>` 是目标数据库名称;
- `<username>` 和 `<password>` 是认证信息(如果启用了身份验证)。
例如:
```java
String url = "jdbc:clickhouse://localhost:8123/default";
Connection conn = DriverManager.getConnection(url, "default", "");
```
成功建立连接后,即可通过 `Statement` 或 `PreparedStatement` 执行查询或更新操作[^1]。
### 日志配置(可选)
为了调试目的,可以在项目中配置日志输出,如使用 Log4j:
```properties
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
```
将上述内容写入 `log4j.properties` 文件,并放置于类路径下,即可启用日志功能[^4]。
---
阅读全文
相关推荐


















