1

我正在尝试通过 R 连接到远程机器上的 MySql 数据库,我尝试过 RODBC 但它失败了,我尝试过 RJDBC 但它失败了:

library(RJDBC)
msDriver <- JDBC(driverClass="com.mysql.jdbc.Driver", classPath=".../mysql-connector-java-5.1.13-bin.jar")
msCon <- dbConnect(msDriver, "jdbc:mysql://[IP]:5433/[SchemaName]",uid="johnDoe",pwd="word")

我得到的信息是:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

我能够连接到其他数据库,但 MySQL 似乎有不同的问题,有任何 1 成功地从 R 中做到这一点吗?

4

2 回答 2

0

您的 URL 不正确,或者您没有被授予从该 IP 地址连接的权限。

默认的 MySQL 端口是 3306。我假设您确定它已针对您的数据库进行了更改。

你的机器和那个数据库之间有防火墙吗?如果是,是否有规则允许您的 IP 通过该端口?如果没有,您需要添加一个。

您可以使用 mysqladmin 工具从该 IP 连接吗?如果没有,Java 也会有问题。

我建议与数据库的所有者交谈,以确保您的 R 应用程序具有访问权限。

于 2013-10-11T12:06:32.743 回答
0

msDriver 部分看起来不错,但我不确定您传递给 dbConnect 的 uid 和 pwd 选项,我将其更改为用户和密码。

如果这不起作用,我将验证与服务器的连接,请尝试从您使用 R 的机器上进行 telnet [IP] [PORT]。如果它没有连接,则问题出在您的网络设置上。尝试检查防火墙规则和代理,如果有的话。

于 2018-05-05T21:44:46.153 回答