如何从本地主机将SQL数据库导入R?

时间:2014-07-11 13:59:25

标签: mysql sql r

我刚刚使用MAMP创建了我的第一个SQL数据库。 (这很简单 - 只是一个宠物列表。)我想将它加载到R.这是我写的:

install.packages("dbConnect")
library(dbConnect)
mypets=dbConnect(MySQL(),user="root",
             host="localhost1234/DatabaseGrace")

返回此错误:

Error in mysqlNewConnection(drv, ...) : 
  RS-DBI driver: (Failed to connect to database: Error: Unknown MySQL server host 'localhost1234/DatabaseGrace' (2))

知道这意味着什么或我如何解决它?

4 个答案:

答案 0 :(得分:8)

谢谢@duffymo和@Lorenz。

要点:

  • 数据库存储在我的计算机上,因此主机确实需要是您建议的localhost。

这是最终起作用的。

install.packages("RMySQL")

install.packages("dbConnect")
library(dbConnect)
dbGrace=dbConnect(MySQL(),user="root",
                 host="localhost",
                 dbname="DatabaseGrace",
                 password="root",
                 unix.sock="/Applications/MAMP/tmp/mysql/mysql.sock")

谢谢,全部!

答案 1 :(得分:4)

我认为主机名应该是" localhost",没有1234.

如果您打算表示端口,我会检查以确保MySQL确实正在侦听该端口。默认值为3306;管理员必须做出有意识的决定来改变这种状况。

通常的表示法是" localhost:3306"在Java中。如果必须包含端口号,请尝试使用冒号将其与主机名分开。

您可以使用admin shell连接到MySQL吗?

您是否已授予localhost连接到名为DatabaseGrace的数据库的权限?如果没有,MySQL不允许你连接。

http://dev.mysql.com/doc/refman/5.1/en/grant.html

localhost告诉我数据库正在本地计算机上运行。真的吗?如果没有,localhost不是正确的主机名。这也可能意味着您的计算机和数据库之间有防火墙阻止您连接。

我从cutting & pasting any errors I get into Google获得了很多里程,看看是否有其他人遇到过我的问题。这是first hit

答案 2 :(得分:1)

主机是计算机名称。所以简单地说localhost。 在第二步中选择正确的数据库。

答案 3 :(得分:0)

这对我在 MAC 上使用 XAMPP 有效:

library(RMySQL)
con=dbConnect(MySQL(),
    host='localhost',       
    unix.sock='/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock',
    user='root',        
    password='...'
    )

df=dbGetQuery(con,'SHOW DATABASES')
print(df)