-->

如何使用MySQL或如何安装RMySQL包连接R'(How to Connect R wit

2019-06-23 21:30发布

我R中新,我试图与R与MySQL连接。 我已经安装mysql-5.5.22-winx64R-2.12.0为64位。 我已经设置MYSQL_HOME environment path(C:\Program Files\MySQL\MySQL Server 5.5)并试图按照下列步骤操作:

  1. 安装从这里最新RTools
  2. 安装MySQL或头和mysql的库文件
  3. 创建或编辑文件C:\Program Files\R\R-2.12.1\etc\Renviron.site并添加这样一行MYSQL_HOME=C:/mysql (路径,你的mysql文件)
  4. 副本libmysql.libmysql/libmysql/lib/opt满足的依赖关系。
  5. 复制libmysql.dllC:\Program Files\R\R-2.12.1\binwindows/system32 directory
  6. 运行install.packages('RMySQL',type='source')并等待汇编将结束。 但我仍收到此错误: -

     *> install.packages('RMySQL',type='source') --- Please select a CRAN mirror for use in this session --- trying URL 'http://ftp.iitm.ac.in/cran/src/contrib/RMySQL_0.9-3.tar.gz' Content type 'application/x-gzip' length 165363 bytes (161 Kb) opened URL downloaded 161 Kb * installing *source* package 'RMySQL' ... ERROR: configuration failed for package 'RMySQL' * removing 'C:/PROGRA~1/R/R-212~1.0/library/RMySQL' * restoring previous 'C:/PROGRA~1/R/R-212~1.0/library/RMySQL' The downloaded packages are in 'C:\Users\sharad\AppData\Local\Temp\RtmpdQHwCb\downloaded_packages' Warning message: In install.packages("RMySQL", type = "source") : installation of package 'RMySQL' had non-zero exit status* 

请建议我我如何才能解决这个问题?

最后,我得到了解决: -你可以看到我的详细解决方案博客 。

我正在为最后2天与RMySQL包r的安装,终于得到了该解决方案,下面是安装RMySQL包的步骤: -

  1. 下载软件从下面的链接:

      * a. R2.13.2: Download R from http://cran.stat.sfu.ca/index.html b. RTools 214: Download RTools from http://cran.cict.fr c. RMySQL 0.8-0.tar.gz: Download RMySQL from http://biostat.mc.vanderbilt.edu/wiki/main/RMySQL/RMySQL_0.8-0.tar.gz d. MySQL Server 5.0: download it from http://dev.mysql.com e. RSTUDIO (optional): download it from http://rstudio.org* 
  2. 设置下面的环境变量

      * a. MYSQL_HOME : <drive>/path to MySQL installation folder eg MYSQL_HOME= C:\Program Files\MySQL\MySQL Server 5.5\ b. R_HOME: <drive>/path to R installation eg R_HOME=C:\Program Files\R\R-2.13.2\ c. PATH: Modify path to accommodate the above variables. * 

    请确保以下路径在Windows的PATH变量areincluded:\ Rtools \ 2.14 \ BIN \ Rtools \ 2.14 \ MinGW的\ BIN \ Rtools \ 2.14 \ MinGW64 \ BIN

  3. 创建文件夹和复制文件

      * a. OPT: Create a folder OPT under C:\Program Files\MySQL\MySQL Server 5.5\lib and copy MYSQLLIB.LIB the above path. Also copy libmysql.dll to <drive>\<path>\R\R-2.14.0\bin\(64 bit) Or <Drive>\<path>\R\R-2.14.0\bin\i386\ (32 bit) and to C:\Windows\System32. b. Renviron.site: create or edit a file <DRIVE>\<path>\R\R-2.14.0\etc\Renviron.site and add a line: MYSQL_HOME =”C:/Program Files/MySQL/MySQL Server 5.5/” NB: USE FORWARD SLASH AND DOUBLE QUOTES HERE c. libMySQL.dll: Copy this file to C:\Program Files\R\R-2.13.2\bin\i386 as well as C:\Program Files\R\R-2.13.2\bin* 
    1. 运行命令

      一个。 Install.Packages:通过点击桌面或开始菜单将R图标运行右Gui。 键入INSTALL.PACKAGES(“RMySQL”,类型=”源”)。 这将下载从仓库所需的软件。

      湾 命令提示符:复制下载的zip文件(步骤4.a.中),并粘贴在R安装过程中的文件夹。 进入开始菜单,打开命令提示符。 进入到R安装文件夹和R型CMD INSTALL RMySQL_0.8-0.tar.gz

      *命令:

      库(RMySQL)DRV = dbDriver( “MySQL的”)CON =数据库连接(DRV,主机= “本地主机”,则dbname = “测试”,用户= “根”,传= “根”)专辑= dbGetQuery(CON,语句= “选择t_master *”)专辑*

Answer 1:

它不是一个直接的答案,但仍可能会发现它有用:

  1. 使用更达R的最新版本(目前为2.15)

  2. 在Windows平台上,我宁愿用RODBC +的Windows MySQL驱动程序,除非你是在与在代码是大量团队成员之间共享异构平台(如Linux和Windows)环境。 即使再根据其运行的平台上相同的脚本使用RMySQL和RODBC之间进行选择是一个简单的if() {...} else {...}

请注意,我不是说有没有什么你正在尝试做的成功的故事,但恕我直言,你就可以启动并运行上述越快。



Answer 2:

现在,您可以跳过所有复杂的步骤,只是做install.packages("RMySQL")



Answer 3:

我在Mac OSX上一个黑客马拉松跑进这个周末 - 我花了扎实的4小时,尽管有一些参考材料(在末尾提到)拼凑的一切。 我没有找到一个简单的步行通过,所以我决定发布一个,而它在我的脑海里记忆犹新。

我不知道与Windows兼容的,但希望这些说明将会使你更容易了。

我试图让R和MySQL来在本地环境中通信(有可能需要为服务器环境的变化)。 我使用的XAMPP(虽然我没有使用RMySQL的连接),但最终我还是能够使用PHP页面写一个R档,执行该文件,并有R写入到一个MySQL表。 据我所知,这仅适用于MacOSX的...

使用的所有软件是DMG形式,从而没有二进制安装必要的。

  1. 下载R和运行一些基本的命令,以确保您有它的工作。

  2. 在R,您需要安装RODBC(如果你没有它的话)。 输入到R控制台此。

install.packages("RODBC")

这将安装RODBC,但由于OS小牛,某些文件不再包括在内,所以你得到一个错误信息

ODBC头sql.h和sqlext.h未找到

你需要得到正确的地点sql.h和sqlext.h文件。

要做到这一点最简单的方法,确保您有自制软件安装(方便指令)。 然后用这个代码在终端进行安装。

一旦这样做了,你进入到R控制台一次

install.packages("RODBC")
  1. 搜索MySQL的适当的ODBC安装 。 我运行的Mac OSX 10.6,所以我下载的DMG并安装它。 这花了自己照顾自己。

  2. 现在到了棘手的部分。 显然,苹果OX拿出ODBC管理最近OS发布后,所以你需要下载ODBC管理器( http://www.odbcmanager.net/ )。 这也是一个DMG文件,所以只需拖放到你的实用程序文件夹。

我曾与5.3.6 DMG困难安装(固定为失败的),所以我安装5.2.7代替。

  1. 打开ODBC管理器。 您需要配置的DSN,那么单击该选项卡“系统DSN”,然后单击“添加”。

  2. 你会得到一个弹出窗口,要求你选择一个驱动程序。 矿井有“MySQL的ODBC驱动程序5.2”基于我的MySQL ODBC安装。 单击“确定”。 如果您没有看到司机,那么你需要确认所安装的MySQL的ODBC。

  3. 在接下来的弹出窗口,使任何你想要的数据源名称(DSN) - 但请记住,这是你需要使用从R.调用在下面(关键字的关键字区域将是加引号的姓名和值将是在括号中),ADD

    “数据库”(与你的数据库名称的值)

    “服务器”(对于本地环境上不要使用localhost - 而不是使用本地IP地址127.0.0.1 ***这对我来说是关键棋子)

    “UID”(数据库用户ID)

    “PWD”(数据库密码)

    “插座”(不知道这是必需的,但多个教程后,留在我的配置和工作的事情,所以也许你需要它你可以在你的my.cnf插座的位置。 - 做一个Spotlight搜索的套接字文件位置是下CLIENT)

    下面是我的配置看起来像:

    DSN(“测试” - 这是在顶部)

    数据库(“电视”)

    插座( “/Applications/XAMPP/xamppfiles/var/mysql.sock”)

    UID( “根”)

    PWD( “”)

    服务器( “127.0.0.1”)

  4. 在R,执行下面的 - 我相信这最后的3个步骤,需要每次启动R和你之前做一个MySQL查询的时间内完成。

    库(RODBC)

  5. 请确保您开启的MySQL和Apache从XAMPP控制面板。

  6. 然后执行

    odbcConnect(“测试”) - 注意我如何用我的DSN在双引号。 交换是必要的。

这应该让你和运行。 你可以阅读有关R.在制作MySQL查询其他教程

我从很多Stack Overflow上伟大的职位(感谢大家!),随机其他网站/电子邮件交流历史的黑客攻击了一起,而“R简而言之”一书由约瑟夫·阿德勒,但让我知道如果我错过了什么,或者它不清楚。

祝好运!



Answer 4:

我还花了几个小时试图让这项工作在Windows 10,收到错误。 我发现RMySQL的修复是凌乱和复杂的,但RODBC有更多的无痛苦和优雅导致的解决方案。 我有R,RStudio,MySQL服务器,MySQL工作台并需要以下步骤,使其工作:

  1. 安装在RStudio包install.packages(RODBC)
  2. 下载并安装MySQL ODBC连接器在这里
  3. 配置MySQL ODBC连接器。 下面是一些说明。 从Windows 10“ODBC”启动画面只是搜索,它会弹出窗口。 获取连接参数正确,并使用测试按钮,以确保它的工作。 它显示了你的数据库的一个下拉菜单,一旦连接列表。 在“数据源名称”给它一个名称,其将进入将R剧本,说“mysql_odbc”

现在,您可以连接,运行查询和断开:

library(RODBC)
cursor <- odbcConnect("mysql_odbc", uid="root", pwd="HaysPuffyWalton5")
out <- sqlQuery(cursor, "SELECT * FROM emp WHERE deptno = 10");
close(cursor);


Answer 5:

这为我工作:使用Windows XP SP3 32位操作系统,R工作室,Rv2.15.3

按照说明从: http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL

但是,如果你已经下载MySQL的版本5.6,您将需要复制libmysql.lib例如存在于以下路径: D:\Program Files\MySQL\MySQL Server 5.6\lib ,并创建新的文件夹,如: D:\Program Files\MySQL\MySQL Server 5.6\lib\opt并粘贴上述libmysql.libopt文件夹。 然后Renviron.site文件都会有这样的: MYSQL_HOME=D:/Program Files/MySQL/MySQL Server 5.6 。 请注意正斜杠。

最后,遵循install.packages行指令在上面提供的链接。 我不得不做一些试验,以得到它的最终权利。



Answer 6:

这里遵循的指导:

http://www.ahschulz.de/2013/07/23/installing-rmysql-under-windows/

我跟着它,和它的工作就像一个魅力。 :)



Answer 7:

如果该错误中的R

library(RMySQL)
#-----------
Loading required package: DBI

Error : .onLoad failed in loadNamespace() for 'RMySQL', details

  call: i$Location

  error: $ operator is invalid for atomic vectors

Error: package or namespace load failed for 'RMySQL'

然后从OUTSIDE [R

set MYSQL_HOME=F:/Program Files/MySQL/MySQL Server 5.6

和回场内:

library(RMySQL)

#Loading required package: DBI
#MYSQL_HOME defined as F:/Program Files/MySQL/MySQL Server 5.6

以及刚从在'r

Sys.setenv(MYSQL_HOME = "F:/Program Files/MySQL/MySQL Server 5.6")
library(RMySQL)

#Loading required package: DBI
#MYSQL_HOME defined as F:/Program Files/MySQL/MySQL Server 5.6


文章来源: How to Connect R with MySQL or how to install RMySQL package?