2013-01-31 35 views
0

我的問題是,我能夠連接數據庫而不使用密碼,也能夠執行查詢,但是當我試圖用密碼連接數據庫時它給出了錯誤。下面我在做什麼,什麼是錯誤我剛纔提到的細節:如何將R中的數據庫MySQL與密碼連接起來?

>library(DBI) 
>library(RMySQL) 
>drv<-dbDriver("MySQL") 
>con<-dbConnect(drv,user="sam",password="sam123",dbname="test") 

那麼錯誤是這樣的:

Error in mysqlNewConnection(drv, ...) : 
    RS-DBI driver: (Failed to connect to database: 
    Error: Access denied for user 'sam'@'localhost' (using password: YES) 

請幫我出這個問題。

回答

0

它似乎是在您的數據庫中的usr「山姆」權限問題。

你應該檢查mysql.users表,並提供必要的權限,如果你試圖從遠程服務器訪問,那麼應該在用戶表的用戶名=「SAM」

+0

添加遠程服務器的IP地址,我能夠唯一的問題和我所做的過程是這樣的:sudo服務mysql stop sudo mysqld --skip-grant-tables ******在另一個終端中,啓動mysql客戶端並選擇mysql數據庫。如果root用戶條目仍然存在,則只需使用查詢「update user set password = password('sam123')'其中user ='sam';'那麼它對我的工作很好。 – Saurabh

+0

@ user1985919:從評論你是否有成功還不清楚。如果你這樣做,那麼將問題標記爲「已回答」。 –

+0

我已經通過上述方法解決了問題,所以我在回答 – Saurabh

相關問題