如何通过开源数据库管理工具 DBeaver 连接 TDengine

DBeaver 是一款流行、开源的数据库管理工具以及 SQL 客户端,其功能强大,并且支持任何拥有 JDBC-Driver 的数据库(这意味着支持几乎所有数据库)。

其官网的介绍是这样的:

Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Apache Hive, Phoenix, Presto, etc.

很多 TDengine 的用户,经常问到如何使用 DBeaver 来连接、管理 TDengine。本文将通过 22.1.2 版本的 DBeaver 详细进行说明。

前置条件

  1. DBeaver 依赖 Java (JDK) 11 ,不过其安装包中已包含。可选安装 Maven、Git。
  2. 已安装并启动了 TDengine。
  3. 若使用 TSDBDriver 驱动类连接 TDengine,请在本地安装 TDengine 客户端。
  4. 若使用 RestfulDriver 驱动类连接 TDengine,请确保 taosAdapter 已经正常运行。

配置

  • 可以克隆 DBeaver 在 GitHub 上的源码,执行 mvn package,也可以直接下载打包好的安装包。此处选择直接下载安装包。
  • 在 GitHub DBeaver 仓库的 Releases 处下载对应版本的 DBeaver,比如系统为 macOS,处理器芯片是 M1 ,此处下载 dbeaver-ce-22.1.2-macos-aarch64.dmg 进行安装。
  • 点击数据库标签,选择驱动管理器:
TDengine Database
TDengine Database
  • 添加后点击找到类,此处使用 RESTful 驱动类演示(注意:若使用 com.taosdata.jdbc.TSDBDriver 驱动类,则需要安装 TDengine 客户端):
TDengine Database
  • 填写一下驱动名称,简单填下配置(需要在 hosts 文件上添加连接串内域名的解析):
TDengine Database
  • 点击新建连接,搜索配置好的驱动名称,点击后进入下一步:
TDengine Database
  • 输入密码后,点击“测试连接”:
TDengine Database

验证

  • 连接成功后,界面左侧能看到刷新出来的数据库(database),点击特定的表可以查看表的结构及数据:
TDengine Database
  • 点击界面左上方的新建 SQL 编辑器,默认,输入 SQL 进行验证。需要注意的是,RESTful 请求是无状态的,查询、写入需要在表名前带上数据库名。
  • 2.X 版本中默认带 log 库,我们可以使用 SHOW log.stables;查看包含哪些超级表后对特定表进行查询、调试:
TDengine Database
  • 可以看到有个超级表叫做 dnodes_info,执行 describe log.dnodes_info;查看表结构:
TDengine Database
  • 再执行 select last_row(*) from log.dnodes_info group by dnode_id;通过 dnode_id 能分组查询各 dnode_id 下的最新一条数据:
TDengine Database
  • 还有其他操作也可以测试,比如写入一条数据后进行查询:
TDengine Database

好了,到这里我们就大功告成了。DBeaver 功能强大,其他常用功能还包括导入导出 SQL 脚本、配置表过滤器、建立数据库任务等,大家可以慢慢体验。

结尾语

感谢您阅读本篇博客,希望以上内容对您有帮助。您在使用 TDengine 这款 TIme Series Database 的过程中,若遇到棘手的问题或对 TDengine 有改进意见,欢迎在 GitHub 上给我们提 Issue ,内容越详细越好,也可微信扫下方二维码加入社区,与大家进行交流 ~ 最后,感谢使用 TDengine!

TDengine Database 小T二维码
加小 T 为好友,立即加入到物联网大数据技术交流群