我正在尝试连接到AWS免费套餐上托管的MySQL。
由于某种原因,我收到一条错误消息,指出未找到我的数据库。我想知道自己在做错什么。
下面是我的代码以及一张图片,该图片说明了我在AWS上的数据库名称。
library(dplyr)
library(dbplyr)
library(pool)
host = "database1.creyniq1gyij.us-east-2.rds.amazonaws.com"
dbname = "database1"
user = "jordan1"
pass = "mysecurepass"
con <- dbPool(RMySQL::MySQL(),
username=user,
password=pass,
host=host,
port=3306,
dbname="database1"
)
Error in .local(drv, ...) :
Failed to connect to database: Error: Unknown database 'database1'
从@ makeshift-programmer答案中,我删除了呼叫中的dbname,并且可以连接。但是,我不确定如何创建dbname / schema,因此可以开始将数据上传到服务器。
答案 0 :(得分:1)
是否可以删除dbname
参数并尝试连接?
根据屏幕快照,您似乎已为实例命名,但未在其上创建数据库。
如果没有dbname
的情况下数据库连接成功,则可以继续在该RDS实例上创建数据库。
要创建数据库,请使用RMySQL
包中的以下查询:
dbSendQuery(con,"create database database1")
答案 1 :(得分:0)
database1
是数据库实例标识符,而不是实际的架构/数据库名称。您创建了架构吗?如果没有,那么您可以尝试连接到默认模式,例如test / mysql。