从R连接到MySQL

问题描述 投票:0回答:2

我试图从R连接到MySQL。我已经在我的机器上安装了“8.0.11 MySQL社区服务器 - GPL”。在R studio中,我安装了RMySQL Library。

当我发出命令:

con = dbConnect(RMySQL::MySQL(),user="root", password = "password", dbname="test")

我一直收到错误:

.local(drv,...)出错:无法连接到数据库:错误:未知数据库'test'

我不确定为什么它会继续发出这个错误。有什么建议?

mysql r rstudio rmysql
2个回答
1
投票

这是我用来从R访问MySQL的代码

# 1. Library
library(RMySQL)

# 2. Settings
db_user <- 'your_name'
db_password <- 'your_password'
db_name <- 'database_name'
db_table <- 'your_data_table'
db_host <- '127.0.0.1' # for local access
db_port <- 3306

# 3. Read data from db
mydb <-  dbConnect(MySQL(), user = db_user, password = db_password,
                 dbname = db_name, host = db_host, port = db_port)
s <- paste0("select * from ", db_table)
rs <- dbSendQuery(mydb, s)
df <-  fetch(rs, n = -1)
on.exit(dbDisconnect(mydb))

请检查它是如何工作的。

PS。看起来你错过'db_table'参数。


1
投票

显而易见的原因可能是“我希望”因为您没有包含主机IP。另外我更喜欢使用qazxsw poi包。然后你的连接电话可能是

pool

另一件事是,最好在测试数据库上定义具有适当权限的用户,并在root连接调用中使用此用户作为数据库连接安全性最佳实践。

© www.soinside.com 2019 - 2024. All rights reserved.