您现在的位置是:首页 >技术杂谈 >spark读写时序数据库 TDengine 错误总结网站首页技术杂谈
spark读写时序数据库 TDengine 错误总结
最近在用spark读取、写入TDengine 数据库遇到了这样一个问题:
JDBCDriver找不到动态链接库(no taos in java.library.path)
我本地都好好的,但是一上服务器写入就会报这个错误,看了很久没有排查出问题,后来经过多方查询得出问题的原因:
原因分析:
之前,由于TDengine的JDBC驱动依赖本地动态库(linux上为libtaos.so,windows上为taos.dll),开发者需要先在本地安装客户端。否则,应用程序会报错:
no taos in java.library.path
而TDengine目前只支持Linux和Windows操作系统的客户端安装包,并且源码也无法在其他操作系统上编译。这对于使用macOS的用户来说,需要先在macOS上写好代码,再将代码部署到Linux服务器上调试,或使用像VS code等可以支持远程代码开发的IDE工具,这些都增加了使用TDengine的开发成本。这也是我们开发JDBC-RESTful的原因。使用JDBC-RESTful后,不需要安装客户端!不需要使用远程代码开发的IDE工具!在MacBook上也可以做开发啦。
我本地没报错的原因是当时测试的时候下载了taos client,而我服务器Linux没有下载安装这个,导致写入一直不能成功。
解决问题:
下载安装taos client,安装到服务器即可。
下载地址:
使用安装包立即开始 | TDengine 文档 | 涛思数据
客户端与服务端版本号要完全一致,不然会客户端连接时会出现错误“Unable to establish connection”
找到适合自己的版本下载安装后,问题解决。
在通过taos连接时,并没有指定用户名与密码;TDengine在用户未指定认证信息时,默认为root, taosdata
https://z.itpub.net/article/detail/AC435984D3153D4A885E70D3F8CE9402
https://blog.csdn.net/MinggeQingchun/article/details/124553960