Как подключить R с MySQL или как установить пакет RMySQL?

я новичок в R, и я пытаюсь подключить R с MySQL. Я установил mysql-5.5.22-winx64 и R-2.12.0 для 64-разрядной. Я уже установил MYSQL_HOME environment path(C:Program FilesMySQLMySQL Server 5.5) и пытается выполнить следующие шаги:

  1. установить последние RTools отсюда
  2. установить MySQL или заголовочные и библиотечные файлы mysql
  3. создать или редактировать файл C:Program FilesRR-2.12.1etcRenviron.site и добавить строку типа MYSQL_HOME=C:/mysql (путь к файлам mysql)
  4. скопировать libmysql.lib С mysql/lib to mysql/lib/opt на встречу зависимости.
  5. скопировать libmysql.dll to C:Program FilesRR-2.12.1bin или windows/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:UserssharadAppDataLocalTempRtmpdQHwCbdownloaded_packages’
     Warning message:
          In install.packages("RMySQL", type = "source") :
    installation of package 'RMySQL' had non-zero exit status*
    

пожалуйста предложите меня как могу я разрешить эту проблему?

наконец-то я получил решение:- Вы можете увидеть решение подробно на my блог.

я работал последние 2 дня над установкой R с пакетом RMySQL, наконец, получил решение для этого, вот шаги по установке пакета 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
             e.g. MYSQL_HOME= C:Program FilesMySQLMySQL Server 5.5  
    
          b. R_HOME: <drive>/path to R installation
             e.g. R_HOME=C:Program FilesRR-2.13.2
    
           c. PATH: Modify path to accommodate the above variables. *
    

    убедитесь, что следующие пути включены в переменную пути Windows: Rtools2.14bin Rtools2.14MinGWbin Rtools2.14MinGW64bin

  3. СОЗДАТЬ ПАПКУ И СКОПИРОВАТЬ ФАЙЛЫ

        * a. OPT: Create a folder OPT under
                 C:Program FilesMySQLMySQL Server 5.5lib and
             copy MYSQLLIB.LIB  the above path.
           Also copy libmysql.dll to
                  <drive><path>RR-2.14.0bin(64 bit) Or
                  <Drive><path>RR-2.14.0bini386 (32 bit) and
             to C:WindowsSystem32.
    
          b. Renviron.site: create or edit a file 
                  <DRIVE><path>RR-2.14.0etcRenviron.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 FilesRR-2.13.2bini386 as well as
                C:Program FilesRR-2.13.2bin*
    
    1. КОМАНДЫ

      a. Установить.Пакеты: запустите R GUI, щелкнув значок R на рабочем столе или в меню "Пуск". Тип установить.Пакеты ("RMySQL", type="Sources"). Это позволит загрузить необходимое программное обеспечение из репозиториев.

      b. Командная строка: скопируйте загруженный zip-файл (на шаге 4.а) и вставьте его в папку установки Р. Перейдите в меню Пуск и откройте Командную строку. Перейдите в папку установки R и введите R CMD INSTALL RMySQL_0.8-0.смола.gz

      *команды:

      библиотека(RMySQL) drv = dbDriver ("MySQL") кон = dbConnect(ДРВ,в host="localhost"в,базе данных dbname="тест",пользователь="корень",передать="корень") альбом = dbGetQuery(con, statement= " select * from t_master") альбом*

7 ответов


это не прямой ответ, но все же вы можете найти его полезным:

  1. используйте более актуальную версию R (в настоящее время в 2.15)

  2. на платформах Windows я бы предпочел использовать драйвер RODBC + Windows MySQL, если вы не находитесь в среде с гетерогенными платформами (например, Linux и Windows), где код широко используется среди членов команды. И даже тогда выбор между использованием RMySQL и RODBC в одном скрипте в зависимости от платформы, которую он запускает простой if() {...} else {...}


теперь вы можете пропустить все сложные шаги и просто сделать install.packages("RMySQL")


я столкнулся с этим в выходные на хакатоне на Mac OSX-мне потребовалось 4 часа, чтобы собрать все вместе, несмотря на наличие нескольких справочных материалов (упомянутых в конце). Я не нашел легкий проход, поэтому я решил опубликовать его, пока он свеж в моем уме.

Я не уверен в совместимости с Windows, но надеюсь, что эти инструкции облегчат вам тоже.

Я пытался получить R и MySQL для связи в локальной среде (для серверной среды могут потребоваться изменения). Я использую XAMPP (хотя я не использовал RMySQL для соединения), но в конце концов я смог использовать страницу PHP для записи файла R, выполнения этого файла и записи R в таблицу MySQL. Насколько мне известно, это работает только для MacOSX...

все используемое программное обеспечение было в форме dmg, поэтому двоичные установки не требуются.

  1. Скачать R и выполните некоторые основные команды, чтобы убедиться, что у вас есть это работает.

  2. в R вам нужно установить RODBC (если у вас его еще нет). Введите это в консоли Р.

install.packages("RODBC")

это устанавливает RODBC, но так как OS Mavericks, некоторые файлы больше не включены, поэтому вы получаете сообщение об ошибке

заголовки ODBC sql.h и sqlext.ч не нашел

и вам нужно получить sql.h и sqlext.H-файлы в нужное место.

для этого простой способ, убедитесь, что у вас есть доморощенного установлен (простые инструкции). Тогда используйте это код в терминале, чтобы сделать установку.

Как только это будет сделано, вы входите в консоль R еще раз

install.packages("RODBC")
  1. Поиск MySQL для соответствующей установки ODBC. Я запускаю Mac OSX 10.6, поэтому я загрузил dmg и установил его. Это само о себе позаботилось.

  2. теперь начинается самое сложное. По-видимому, Mac OX вывел администратора ODBC после недавнего выпуска ОС, поэтому вам нужно загрузить ODBC Manager (http://www.odbcmanager.net/). Это тоже dmg-файл, поэтому просто перетащите его в папку utilities.

у меня были трудности с установкой 5.3.6 dmg (продолжался сбой), поэтому я установил 5.2.7 вместо этого.

  1. открыть Диспетчер ODBC. Вам нужно настроить DSN, поэтому перейдите на вкладку " системный DSN" и нажмите кнопку "Добавить".

  2. вы получите всплывающее окно с просьбой выбрать драйвер. У меня был "драйвер MySQL ODBC 5.2" на основе моей установки MySQL ODBC. нажимать OK." Если вы не видите драйвер, то вам нужно подтвердить, что установлен MySQL ODBC.

  3. в следующем всплывающем окне сделайте имя источника данных (DSN), что вы хотите - но помните, что это имя, которое вам нужно использовать для вызова из R. в области ключевых слов ниже (ключевые слова будут в кавычки и значение будут в круглых скобках), добавить

    "база данных" (со значением вашего имени базы данных)

    "server" (для локальной среды не используйте localhost - вместо этого используйте локальный IP-адрес 127.0.0.1. *** Это был ключевой кусок для меня)

    " uid "(ID пользователя базы данных)

    " pwd " (пароль базы данных)

    "сокет" (не уверен, что это было необходимо, но после нескольких учебных пособий он остался в моей конфигурации, и все работает, поэтому, возможно тебе это нужно. Вы можете найти свое местоположение гнезда в моей.cnf-сделайте поиск в центре внимания. Расположение файла сокета находится под CLIENT)

    вот как выглядела моя конфигурация:

    DSN ("тест" - это было вверху)


Я также потратил несколько часов, пытаясь сделать эту работу в Windows 10, получая ошибки. Исправления, которые я нашел для RMySQL, были грязными и сложными, но RODBC более безболезненно и элегантно привел к решению. У меня был R, RStudio, MySQL Server, MySQL Workbench, и для его работы требовались следующие дополнительные шаги:

  1. установите пакет в RStudio install.packages(RODBC)
  2. Загрузите и установите MySQL ODBC connector здесь
  3. настроить соединитель ODBC MySQL. здесь некоторые инструкции. Просто выполните поиск на начальном экране Windows 10 для "ODBC", и появится это окно. Получите правильные параметры соединения и используйте кнопку test, чтобы убедиться, что он работает. Он показывает список ваших баз данных в раскрывающемся меню после подключения. В "имени источника данных" дайте ему имя, которое войдет в скрипт R, скажем 'mysql_odbc'

теперь вы можете подключиться, выполнить запрос и отключить:

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

это сработало для меня: использование Windows XP SP3 32bit OS, R Studio, Rv2.15.3

следуйте инструкциям из:http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL

однако, если вы загрузили MySQL edition 5.6, вам придется скопировать libmysql.lib присутствует, например, в этом пути:D:\Program Files\MySQL\MySQL Server 5.6\lib и создайте новую папку, как в: D:\Program Files\MySQL\MySQL Server 5.6\lib\opt и вставить выше libmysql.lib на . Тогда Renviron.site файл будет иметь следующее:MYSQL_HOME=D:/Program Files/MySQL/MySQL Server 5.6. Обратите внимание на косая черта.

наконец следуйте инструкциям по установке.линия пакетов, как указано в ссылке выше. Мне пришлось пройти несколько испытаний, чтобы все исправить.


следуйте инструкциям здесь:

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

Я последовал за ним, и он работал как шарм. :)


ЕСЛИ ЭТА ОШИБКА В 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'

ТОГДА ИЗВНЕ 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