我正在尝试使用 RJDBC 连接到 Oracle。我的 R 代码在 windows 环境下运行良好,当我把它放在 centos VM 上时,我遇到了错误。JAVA_HOME 已正确设置。所需的包 RJDBC、rJava 也已正确安装。
这是我的代码:
library(RJDBC)
jdbcDriver <- JDBC(driverClass="oracle.jdbc.OracleDriver", classPath="/users/myusername/tmp/ojdbc6.jar")
dbConnect(jdbcDriver, "jdbc:oracle:thin:@hostname:1521:service", "myusername", "mypwd")
前 2 个语句工作正常,但 dbConnect 失败并出现以下错误:
.jcall(drv@jdrv, "Ljava/sql/Connection;", "connect", as.character(url)[1], 中的错误:java.sql.SQLRecoverableException: IO 错误:网络适配器无法建立连接
这看起来像是一个常见的 RJDBC 问题。我发现与此问题相关的问题很少,但到目前为止我还没有找到解决方案。