【问题标题】:Can't connect to local MySQL server in R无法连接到 R 中的本地 MySQL 服务器
【发布时间】:2017-03-27 00:45:08
【问题描述】:

我正在学习如何通过 RMySQL 包在 R 中使用 MySQL:

https://www.tutorialspoint.com/r/r_database.htm

但是当我尝试连接到示例中提供的数据库时

mysqlconnection = dbConnect(MySQL(), user = 'root', password = '', dbname = 'sakila', host = 'localhost')

我明白了:

 Failed to connect to database: Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

我的猜测是我只是在我的笔记本电脑(mac os)上运行它,所以如果我的猜测是正确的(?)我需要一些虚拟服务器。

你知道任何这样做的 R 包吗?任何建议表示赞赏。

【问题讨论】:

  • 我遇到了类似的问题,并通过使用 RMariaDB 而不是 RMySQL 来修复它。现在它可以完美运行(RMySQL 已弃用)。

标签: mysql r database server


【解决方案1】:

首先检查您的 sql 服务是否正在运行。

服务 mysqld 启动

那就试试mysql -u root

如果无法从上述解决方案中解决问题,请尝试使用 host = '127.0.0.1' 而不是 localhost。因为 127.0.0.1 使用 TCP/IP 连接器。除非 localhost 使用套接字连接器运行。

【讨论】:

  • 谢谢,“service”和“mysql”命令应该在R提示符中运行吗?
  • 没有。你的操作系统控制台。
  • 我安装了mysql,启动它并输入:sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist 密码:com.oracle.oss.mysql.mysqld:已经加载,然后在 R 提示符中:mysqlconnection = dbConnect(MySQL(), user = 'root', password = '', dbname = 'sakila', host = '127.0.0.1') Error in .local(drv, . ..):无法连接到数据库:错误:用户'root'@'localhost'的访问被拒绝(使用密码:NO)
  • 请在此处查看解决方案:stackoverflow.com/questions/6445917/…
【解决方案2】:

我也遇到了同样的问题,但https://www.tutorialspoint.com/r/r_database.htm 中的说明对我来说效果很好。这是我的步骤

1.安装和加载“odbc”和“RMySQL”包

library(odbc);library(RMySQL)

2。设置连接

mysqlconnection = dbConnect(MySQL(), user = 'root', password = '', dbname = 'your_db_name',host = 'localhost')

3。列出 your_db_name 中的所有表

dbListTables(mysqlconnection)

4.现在您可以编写查询了

result = dbSendQuery(mysqlconnection,"select * from your_table_name limit 0,30")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2012-08-08
    • 1970-01-01
    • 2020-02-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多