使用4.1.1之前的身份验证协议使用R访问MySQL

use*_*861 10 mysql database plot r protocols

我需要访问MySQL远程服务器,我想用R软件来做这件事.

我设置了连接参数但我无法访问.我用这个代码:

drv <- dbDriver("MySQL")
library(RMySQL)
# open the connection using user, passsword, etc., as
con <- dbConnect(MySQL(), user="user", password="psw",
dbname="NameDB", host="webhosting", port=3306)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Error in mysqlNewConnection(drv, ...) : 
RS-DBI driver: (Failed to connect to database: Error: Connection using old (pre-4.1.1)
authentication protocol refused (client option 'secure_auth' enabled)
Run Code Online (Sandbox Code Playgroud)

我尝试使用MySQL工作台连接到数据库,只有在我选择选项时才能使用它:"使用旧的身份验证协议".因此我知道这是我需要在我的连接中激活,也使用R.但是我不知道该怎么做!我试图禁用"secure_auth",但dbConnect没有该参数.

我该如何更改授权?提前致谢!

Ps:我无法升级服务器密码以使其与4.1.1之后的协议兼容.

ato*_*c77 0

您可能想尝试使用RJDBC连接到 MySQL - 它将在幕后与 JDBC 驱动程序连接,这显然将允许旧式身份验证