我试图连接vertica数据库并用R访问它。为此,我遇到了ODBC和RJDBC。在继续使用RJDBC的同时,我安装了R中所需的所有客户端驱动程序和软件包。 Vertica服务器的版本为8.0.1,Windows的客户端驱动程序为8.0.x(我也在ubuntu中尝试使用相同的客户端驱动程序) 我还在两个平台上检查了Java版本,它是1.8.0_171。 与R建立连接时出现的错误是:
Error in .jcall(drv@jdrv, "Ljava/sql/Connection;", "connect", as.character(url)[1], :
java.sql.SQLNonTransientConnectionException: [Vertica][VJDBC](5273) FATAL:
Unsupported frontend protocol 3.8: server supports 3.0 to 3.6
我还尝试了myVertica.com上所有可用的客户端驱动程序版本:
1)vertica-jdbc-9.1.0-0
2)vertica-jdbc-8.1.1-18
3)vertica-jdbc-8.0.1-6
4)vertica-jdbc-7.1.2-0
5)vertica-jdbc-7.2.3-0
我在R中的代码是:
drv <- JDBC(driverClass="com.vertica.jdbc.Driver",
classPath="/Downloads/vertica-jdbc-8.0.1-6.jar")
conn <- dbConnect(drv, paste0("jdbc:vertica://",client.hostname,":5433/",client.dbname),user=client.username , password=client.password)