12

我正在从RSQLiteto移动,我对and字段RMySQL感到困惑。FWIW,我正在运行 Windows 7、R 2.12.2、MySQL 5.5(全 64 位)和 RMySQL 0.7-5。userpassword

我按照上一个 SO questionRMySQL中的规定进行了安装,据我所知它可以工作(即,我可以使用 加载包)。但是,当我尝试从R 数据导入指南运行教程时,我收到“无法连接到数据库...”错误。这是指南中的教程中的代码:library(RMySQL)

library(RMySQL) # will load DBI as well
## open a connection to a MySQL database
con <- dbConnect(dbDriver("MySQL"), user = "root", password = "root", dbname = "pookas")
## list the tables in the database
dbListTables(con)
## load a data frame into the database, deleting any existing copy
data(USArrests)
dbWriteTable(con, "arrests", USArrests, overwrite = TRUE)
dbListTables(con)
## get the whole table
dbReadTable(con, "arrests")
## Select from the loaded table
dbGetQuery(con, paste("select row_names, Murder from arrests",
                      "where Rape > 30 order by Murder"))
dbRemoveTable(con, "arrests")
dbDisconnect(con)

在第二行我收到以下错误:

> con <- dbConnect(dbDriver("MySQL"), user = "richard", password = "root", dbname = "pookas")
Error in mysqlNewConnection(drv, ...) : 
  RS-DBI driver: (Failed to connect to database: Error: Access denied for user 'richard'@'localhost' (using password: NO)
)

我尝试过使用和不使用user以及password使用 admin 作为user. 我也尝试过使用dbname我之前在命令行中制作的一个和一个不存在的。

有小费吗?这里有很好的参考吗?谢谢!

4

3 回答 3

5

这很可能是服务器端的设置问题。确保启用了网络访问。

此外,使用命令行客户端的本地测试并不等同于通常使用套接字的测试。mysql 服务器日志可能会有所帮助。

于 2011-03-25T12:07:54.913 回答
3

首先尝试使用 MySQL Workbench 或使用相同参数的命令行 mysql 连接到 MySQL 服务器。如果它连接,那么 R 也应该能够连接。

通常,当 MySQL 服务器不允许来自远程计算机的连接时,就会出现此问题。

于 2012-02-21T06:10:34.987 回答
0

正如人们告诉您的那样,您可以尝试使用其他应用程序作为 mysql 工作台连接到主机。多么奇怪!当我在 RStudio 中尝试使用您的代码连接到我的数据库时,在命令中没有指明主机时,我无法连接。

我需要在命令中指明主机( host = 'localhost' )。

于 2013-04-18T15:22:50.763 回答