clickhouse-jdbc-bridge:是clickhouse提供的一个jdbc组件,用于通过JDBC的方式远程访问其他数据库表。
mkdir -p /home/soft/tools/ck-jdbc-bridge --存放驱动配置文件
mkdir -p /home/soft/tools/ck-jdbc-bridge/config/datasources --存放数据源配置文件
mkdir -p /home/soft/tools/ck-jdbc-bridge/drivers --jdbc驱动存放目录
3、以连接JDBC访问postgresql 例:在官网https://mvnrepository.com下载postgresql对应的驱动包:PostgreSQL JDBC Driver » 42.6.0,包名: postgresql-42.6.0.jar
放在/home/soft/tools/ck-jdbc-bridge/drivers目录下:
地址:https://mvnrepository.com/artifact/org.postgresql/postgresql/42.6.0
4、设置clickhouse-jdbc-bridge远程的数据库信息
在/home/soft/tools/ck-jdbc-bridge/config/datasource目录下
在datasources目录下创建数据源配置文件,msjdbc.json文件名尽量与配置中的datasource名一致,如下配置:
{
"msjdbc": {
"driverUrls": [
"/home/soft/tools/ck-jdbc-bridge/drivers/postgresql-42.6.0.jar"
],
"driverClassName": "org.postgresql.Driver",
"jdbcUrl": "jdbc:postgresql://192.xx.3.233:5432/you-dataname",
"username": "xxx",
"password": "xxx",
"connectionTestQuery": ""
}
}
5、进入/home/soft/tools/ck-jdbc-bridge目录,运行clickhouse-jdbc-bridge
nohup java -jar clickhouse-jdbc-bridge-2.0.7-shaded.jar &
tail -f nohup.out
6、在clickhouse部署的服务器修改clickhouse的config.xml配置:具体位置/etc/clickhouse-server目录下的config.xml文件,找到以下代码,移除注释,并修改host为执行clickhouse-jdbc-bridge-2.0.7-shaded.jar的ip地址:
127.0.0.1
9019
保存之后,重启clickhoust服务
systemctl restart clickhouse-server
1、查看能成功访问的的链接:
select * from jdbc('','show datasource')
2、远程查询oracle的某个表 :
select from jdbc('msjdbc', 'select * from msname.test_tb')
3、直接远程连接
select from jdbc('jdbc:postgresql://xxx.xxx.xx.xxx:5432/you-database?user=xxx&password=xxx', 'select * from msname.test_tb')
参考:clickhouse远程访问Oracle 11g数据库(clickhouse-jdbc-bridge)_程序员储物箱的博客-CSDN博客