用于ClickHouse的JDBC链接桥。 它充当无状态代理,将查询从ClickHouse传递到外部数据源。 使用此扩展,您可以跨多个数据源实时在ClickHouse上运行分布式查询,从而以某种方式简化了用于数据仓库,监视和完整性检查等的数据管道的构建过程。
Debain/ubuntu下安装方法如下:
其它类型的linux安装方法见官方github:https://codechina.csdn.net/mirrors/ClickHouse/clickhouse-jdbc-bridge
apt update && apt install -y procps wget
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v2.0.1/clickhouse-jdbc-bridge_2.0.1-1_all.deb
apt install --no-install-recommends -f ./clickhouse-jdbc-bridge_2.0.1-1_all.deb
//启动服务
clickhouse-jdbc-bridge
ClickHouse JDBC Bridge安装完成之后,即可使用它连接其他的数据库,如MySQL,SQL server等
以SQL server举例:
- 在/etc/clickhouse-jdbc-bridge目录下新建drivers文件夹,将SQL server驱动jar包放入其中
如果找不到jar包的,可以点https://download.csdn.net/download/qq_38830964/16691377下载
在/etc/clickhouse-jdbc-bridge/config/datasource目录下,编辑datasource.json.example文件(这一步好像可有可无,如果你是clickhouse-jdbc-bridge-2.0以上,好像不需要,直接启动服务即可)
配置参考如下
{"$schema": "../datasource.jschema","ch-server": {"aliases": ["self"],"driverUrls": ["https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc/0.2.5/clickhouse-jdbc-0.2.5-shaded.jar"],"driverClassName": "ru.yandex.clickhouse.ClickHouseDriver","jdbcUrl": "jdbc:clickhouse://ch-server:8123/system?compress=false","username": "default","password": "","maximumPoolSize": 5},"msjdbc": {"driverUrls": ["../../drivers/mssql-jdbc-9.2.1.jre8.jar"],"driverClassName": "com.microsoft.sqlserver.jdbc.SQLServerDriver","jdbcUrl": "jdbc:sqlserver://localhost:1433;DatabaseName=data","username": "sa","password": "root"}
}
-
如果在连接过程中,出现连接错误的情况,请打开sqlserver配置管理器,查看
-
开启sqlserver的tcp/ip连接
在sqlserver mangement网络服务中,开启tcp/ip的端口,主要是IP0,IP1,ipall
使用jdbc表引擎创建clickhouse数据表
使用clickhouse-jdbc-bridge ,jdbc表引擎连接sqlserver('DSN', database or schema, table)
CREATE TABLE jdbc
(lx String,number Int64,kcsl Int64,kcjes Int64,djsj DateTime(2)
)
ENGINE = JDBC('jdbc:sqlserver://localhost:1433;DatabaseName=data;user=sa;password=root', '', 'test')