2014-07-11 88 views
4

我剛剛使用MAMP創建了我的第一個SQL數據庫。 (這是簡單 - 只是一個寵物的列表),我想將其加載到R.下面是我寫的:返回如何從本地主機獲取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)) 

任何想法,這是什麼意味着什麼或我如何解決它?

回答

1

主機是計算機名稱。所以簡單地說就是localhost。 第二步選擇正確的數據庫。

+0

謝謝@洛倫茲的迴應。我已經嘗試了host =「localhost:DatabaseGrace」host =「localhost/DatabaseGrace」host =「localhost」最後一個,錯誤更改爲「mysqlNewConnection(drv,...)中的錯誤: RS-DBI驅動程序:(無法連接到數據庫:錯誤:無法通過套接字連接到本地MySQL服務器'/tmp/mysql.sock'(2) )「 – Grace

4

我覺得主機名稱應該是「本地主機」,而1234

如果您打算意味着港口,我會檢查,以確保MySQL正在的確偵聽該端口。默認值是3306;管理員將不得不作出有意識的決定來改變這一點。

通常的表示法是Java中的「localhost:3306」。如果您必須包含端口號,請嘗試用冒號將其與主機名分開。

你可以用admin shell連接到MySQL嗎?

您是否授予本地主機連接到名爲DatabaseGrace的數據庫的權限?如果不是,MySQL將不允許你連接。

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

本地主機建議,我認爲該數據庫在本地機器上運行。真的嗎?如果不是,localhost不是正確的主機名。這也可能意味着你的計算機和數據庫之間有防火牆,防止你連接。

我從cutting & pasting any errors I get into Google中獲得了很多里程,看看是否有其他人遇到過我的問題。這裏是first hit

+0

謝謝@duffymo的回覆。當我刪除號碼時,錯誤會改變。當我在線查看數據表時,我看到Server:localhost:####»Database:DatabaseGrace。 (我省略了四位數字,因爲我不知道它是否應該是私人的,它不是3306)。如果沒有四位數字,錯誤將變成「Error in mysqlNewConnection(drv,...): RS-DBI驅動程序:(無法連接到數據庫:錯誤:無法通過套接字'/tmp/mysql.sock'(2)連接到本地MySQL服務器「再次感謝所有人! – Grace

8

謝謝@duffymo和@洛倫茲。

摘要:

  • 數據庫存儲在我的電腦上,因此主機確實需要如你所說爲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") 

謝謝,所有!

相關問題