【发布时间】:2016-11-10 12:44:30
【问题描述】:
我是使用 Mac(OS X) 使用 RStudio 的 R 新手。
我成功地使用sequel Pro来查看数据库。
我使用带有 RMySQL 的 dbConnect 和带有 RStudio 的 DBI(下面的代码)。
library(DBI)
library(RMySQL)
con <- dbConnect(RMySQL::MySQL(),
username = "username",
password = "password",
host = "hostname-xxx.ap-northeast-1.rds.amazonaws.com",
port = 3306,
dbname = "dbname"
)
但我有以下错误。
Error in .local(drv, ...)
Failed to connect to database: Error: Access denied for user 'username'@'yyyyyyyyyyymarunouchi.tokyo.ocn.ne.jp' (using password: YES)
所以像这样使用终端的 ssh 隧道。
ssh -f sshuser@xx.xxx.xx.xx -i ~/.ssh/ssh_key -L 3306:hostname-xxx.ap-northeast-1.rds.amazonaws.com:3306 -N
并成功登录。
之后,为了确认,在命令下面执行(在终端中)但输入正确密码后失败。
mysql -h 127.0.0.1 -p -u username dbname
带有错误代码
ERROR 1044 (42000): Access denied for user 'username'@'localhost' to database 'dbname'
(其他同名机器登录成功,不知道为什么……)
和 dbConnect(RMySQL with RStudio) 显示与上述相同的错误。
大家有同样的情况吗?请告诉我该怎么做。
谢谢。
【问题讨论】:
-
这只是数据库凭据的问题。您需要在 DBMS 中设置一个用户,该用户有权访问您登录的数据库,然后使用该帐户 + 密码登录。这可能与您用于登录服务器的帐户不同。 digitalocean.com/community/tutorials/…
标签: mysql r ssh rstudio rmysql