12

RSQLiteからに移動していますが、 フィールドとフィールドRMySQLに混乱しています。FWIW、私は Windows 7、R 2.12.2、MySQL 5.5 (すべて 64 ビット)、および RMySQL 0.7-5 を実行しています。userpassword

この以前の SO の質問RMySQLで規定されているようにインストールしましたが、動作することがわかっている限り (つまり、.xml でパッケージをロードできます)。しかし、R データ インポート ガイドからチュートリアルを実行しようとすると、「データベースへの接続に失敗しました...」というエラーが表示されます。これは、ガイドのチュートリアルのコードです。library(RMySQL)

library(RMySQL) # will load DBI as well
## open a connection to a MySQL database
con <- dbConnect(dbDriver("MySQL"), user = "root", password = "root", dbname = "pookas")
## list the tables in the database
dbListTables(con)
## load a data frame into the database, deleting any existing copy
data(USArrests)
dbWriteTable(con, "arrests", USArrests, overwrite = TRUE)
dbListTables(con)
## get the whole table
dbReadTable(con, "arrests")
## Select from the loaded table
dbGetQuery(con, paste("select row_names, Murder from arrests",
                      "where Rape > 30 order by Murder"))
dbRemoveTable(con, "arrests")
dbDisconnect(con)

2 行目に次のエラーが表示されます。

> con <- dbConnect(dbDriver("MySQL"), user = "richard", password = "root", dbname = "pookas")
Error in mysqlNewConnection(drv, ...) : 
  RS-DBI driver: (Failed to connect to database: Error: Access denied for user 'richard'@'localhost' (using password: NO)
)

admin as の有無userにかかわらず試してみました。また、以前に作成したコマンドラインと存在しないものを使用してみました。passworduserdbname

任意のヒント?ここに良いリファレンスはありますか?ありがとう!

4

3 に答える 3

5

これは、サーバー側のセットアップの問題である可能性が最も高いです。ネットワーク アクセスが有効になっていることを確認します。

また、コマンドライン クライアントを使用したローカル テストは、通常はソケットを使用するため、同等ではありません。mysql サーバーのログが役立つ場合があります。

于 2011-03-25T12:07:54.913 に答える
3

最初に、MySQL Workbench またはコマンド ライン mysql を使用して、同じパラメーターを使用して MySQL サーバーに接続してみます。接続する場合、R も接続できるはずです。

通常、この問題は、MySQL サーバーがリモート マシンからの接続を許可しない場合に発生します。

于 2012-02-21T06:10:34.987 に答える
0

人々があなたに言ったように、mysql ワークベンチとして他のアプリケーションでホストへの接続を試みることができます。奇妙だ!コマンドでホストを指定せずに RStudio でコードを使用してデータベースに接続しようとしたときに、接続できませんでした。

コマンドでホスト ( host = 'localhost' ) を指定する必要がありました。

于 2013-04-18T15:22:50.763 に答える