clickhouse与oracle传输数据

参考

https://github.com/ClickHouse/clickhouse-jdbc-bridge

https://github.com/ClickHouse/clickhouse-jdbc-bridge/blob/master/docker/README.md

clickhouse官方提供了一种方式,可以实现clickhouse与oracle之间传输数据,不仅仅是oracle,而且是一类支持jdbc的数据库,这种方式就是JDBC bridge for ClickHouse

它可以作为一个无状态的代理将查询传递到外部数据源。由于这个扩展功能,你可以在clickhouse上运行分布式查询,这查询能够做到实时跨多数据源。

安装

如何部署

直接在部署clickhose的linux服务器上,下载安装释出的debian/rpm包。Debian/Ubuntu按照如下操作即可。

apt update && apt install -y procps wget

wget 

https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v2.1.0/clickhouse-jdbc-bridge_2.1.0-1_all.deb

说明:第一次下载失败后,再次下载,文件名多了后缀.1,稍后删除之前下载不完整的文件,并将这个完整文件的文件名后缀.1剔除。

第一次下载失败如下所示,重新下载即可,外网速度问题

apt install --no-install-recommends -f ./clickhouse-jdbc-bridge_2.1.0-1_all.deb

clickhouse-jdbc-bridge

说明:第一次下载失败,多次下载,安装时报错

如上截图所示,删除第一个下载失败的(rm),并调整名称后(mv),再次执行。

启动  clickhouse-jdbc-bridge

启动时报错,提示没有日志文件,参考链接

https://github.com/ClickHouse/clickhouse-jdbc-bridge/tree/master中configuration中有关于日志的配置

点击查看,按照下图所示配置文件中的路径,以root用户登录,新建目录。

/var/log/clickhouse-jdbc-bridge/console.log

再启动时不再报无法加载日志处理器的错误。

配置

目录结构

上传驱动文件

切换到clickhouse-jdbc-bridge主目录,本例中为

/etc/clickhouse-jdbc-bridge

新建目录 mkdir drivers

以root用户登录,上传oracle驱动

重启 clickhouse-jdbc-bridge,在clickhouse client输入如下形式的内容,回车。

select * from jdbc('jdbc:oracle:thin:name/pass@ip:port:sid', 'select 1 from dual')

或者如下

select * from jdbc('jdbc:oracle:thin:name/pass@ip:port/sid', 'select 1 from dual')

不建议直接暴露数据库的连接信息,可以将连接信息配置在config中的json文件中,然后再引用配置信息。

配置连接信息

切换到config目录

将数据库的连接配置信息可以放在config/datasources目录的json文件中。

复制示例文件,然后调整

cp datasource.json.example ora.json

驱动地址:/etc/clickhouse-jdbc-bridge/drivers/ojdbc6.jar

jdbcUrl:jdbc:oracle:thin:@port:port:sid

调整完之后保存,clickhouse-jdbc-bridge会自动读取json配置内容。如果没读取到,重启下clickhouse-jdbc-bridge,出现如下图所示,红框的内容,表示读取成功。

验证效果

相关推荐

  1. (第29天)Oracle 数据传输表空间

    2024-04-27 06:18:04       56 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-27 06:18:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-27 06:18:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-27 06:18:04       82 阅读
  4. Python语言-面向对象

    2024-04-27 06:18:04       91 阅读

热门阅读

  1. golang学习笔记——FAQ 1.22.2

    2024-04-27 06:18:04       36 阅读
  2. mxnet gluon GRU 文档

    2024-04-27 06:18:04       34 阅读
  3. Linux:使用ssl加密网站为https

    2024-04-27 06:18:04       35 阅读
  4. ttcp测试网络吞吐量

    2024-04-27 06:18:04       41 阅读
  5. Nginx安装withSSL模块

    2024-04-27 06:18:04       36 阅读
  6. Socket套接字(TCP流)篇

    2024-04-27 06:18:04       37 阅读
  7. C++ std::variant 总结

    2024-04-27 06:18:04       34 阅读
  8. 新媒体矩阵号是怎么做的?

    2024-04-27 06:18:04       34 阅读