与--secure_auth = false的RMySQL连接

时间:2016-09-23 14:55:11

标签: security authentication rmysql

我需要从旧的MySQL服务器获取数据,并且在尝试使用RMySQL或DBI程序包连接时遇到以下错误:

Error in .local(drv, ...) : Failed to connect to database: Error: Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)

在终端上,我必须使用'--secure_auth = false'选项才能连接到MySQL服务器,但我无法处理如何将它与RMySQL和DBI包一起使用。

阅读这些软件包文档,我发现在{cdmpConnect()函数中使用了default.file arg。所以我创建了一个'.my.cnf'文件,其中'secure_auth = false'方向(遵循MySQL文档)。但是使用这个conf文件,dbConnect()函数崩溃了。

使用RJDBC软件包,我可以连接到该服务器,即使没有任何额外的选项来设置secure_auth。但我想使用RMySQL来做到这一点,因为我已经将它用于同一个脚本中的许多其他连接,并且因为RMySQL比RJDBC更新。

我的sessionInfo():

R version 3.3.1 (2016-06-21) Platform: x86_64-redhat-linux-gnu (64-bit) Running under: Red Hat Enterprise Linux attached base packages: [1] stats graphics grDevices utils datasets methods base
other attached packages: [1] RJDBC_0.2-5 rJava_0.9-8 DT_0.1 reshape2_1.4.1 RAdwords_0.1.9
[6] RGA_0.4.2 highcharter_0.3.0 ggplot2_2.1.0 lubridate_1.5.6 dplyr_0.4.3
[11] gpbR_1.0 RMySQL_0.10.9 DBI_0.4-1

0 个答案:

没有答案