добавить пакет RMySQL в R не удается (в Windows)? - PullRequest
9 голосов
/ 24 января 2011

Я не могу понять, почему мой пакет RMySQL не будет установлен - вот что я получаю:

> install.packages('RMySQL',type='source')
trying URL 'http://cran.mirrors.hoobly.com/src/contrib/RMySQL_0.7-5.tar.gz'
Content type 'application/x-gzip' length 160769 bytes (157 Kb)
opened URL
downloaded 157 Kb

* installing *source* package 'RMySQL' ...
ERROR: configuration failed for package 'RMySQL'
* removing 'C:/PROGRA~1/R/R-212~1.0/library/RMySQL'

The downloaded packages are in '(foo)'

Warning message:
In install.packages("RMySQL", type = "source") : installation of package 'RMySQL' had    non-zero exit status

Я не думаю, что это проблема с установкой MySQL, так как правильные значения кажутсябыть в реестре:

> Sys.getenv('MYSQL_HOME')
                 MYSQL_HOME "C:/PROGRA~1/MySQL/MYSQLS~1.1/" 
> readRegistry("SOFTWARE\\MySQL AB", hive="HLM", maxdepth=2)
$`MySQL Server 5.1`
$`MySQL Server 5.1`$DataLocation
[1] "C:\\Documents and Settings\\All Users\\Application Data\\MySQL\\MySQL Server 5.1\\"

$`MySQL Server 5.1`$FoundExistingDataDir 
[1] "0"

$`MySQL Server 5.1`$Location 
[1] "C:\\Program Files\\MySQL\\MySQL Server 5.1\\"

$`MySQL Server 5.1`$Version
[1] "5.1.54"

озадачен.Любая помощь будет принята с благодарностью!

Ответы [ 11 ]

19 голосов
/ 08 марта 2011

Базовый процесс описан здесь , но есть несколько советов, поэтому я опишу все решение (пожалуйста, измените версию R и пути при необходимости) :

  1. Установите последнюю версию RTools из здесь
  2. установить MySQL или заголовочные и библиотечные файлы mysql
  3. создайте или отредактируйте файл C:\Program Files\R\R-2.12.1\etc\Renviron.site и добавьте строку наподобие MYSQL_HOME=C:/mysql (путь к вашим файлам mysql)
  4. скопировать libmysql.lib из mysql / lib в mysql / lib / opt для удовлетворения зависимостей.
  5. скопируйте libmysql.dll в C:\Program Files\R\R-2.12.1\bin или в каталог windows/system32.
  6. запустите install.packages('RMySQL',type='source') и дождитесь окончания компиляции.

Это работало для меня на 64-битной Windows 7, поэтому не должно быть проблем с 32-битными версиями

Изначально отправлено здесь (аналогичный вопрос).

3 голосов
/ 30 сентября 2011

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

http://kenahoo.blogspot.com/2011/09/rmysql-binary-for-windows-7.html

Я в основном следовал всем этим указаниям, в том числе на странице Вандербильта, но по той или иной причине это не всегда работает. Во всяком случае, надеюсь, что это может быть полезно для людей, которые имеют те же версии материала, который я использовал.

3 голосов
/ 25 января 2011

Сначала я бы попробовал следовать указаниям на этой странице: http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL

Затем убедитесь, что на вашем компьютере действительно есть клиент MySQL, а не только сам сервер. У меня была проблема, когда мне приходилось использовать более старый двоичный файл для клиента, но вы можете загрузить их с веб-сайта mysql.

2 голосов
/ 02 февраля 2014

Я наткнулся на это пошаговое руководство по установке RMySQL под 64-битную Windows7.

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

Используемое программное обеспечение:

  1. ОС Windows 8
  2. R3.0.2 - 64 бита
  3. Rtools 3.1
  4. MySQL Server Community Edition 5.6 - 64 бита

В соответствии с приведенным выше руководством (сскриншоты), моя установка и загрузка пакета RMySQL работает.

Большое спасибо Арне Хендрик Шульц!

2 голосов
/ 01 апреля 2011

У меня была такая же проблема в Windows 7 с R 2.12.1 x64, и я решил ее следующим образом:

  1. Изменение каталога R в моей переменной PATH на C:\Program Files\R\R-2.12.1\bin\x64 (а не просто...\R-2.12.1\bin).
  2. Копирование ...\MySQL Server 5.5\lib\libmysql.dll в ...\MySQL Server 5.5\bin\.
  3. Запуск R CMD INSTALL RMySQL_0.7-5.tar.gz в cmd.exe (install.packages('RMySQL',type='source') в R по-прежнему не будет работать).
1 голос
/ 30 октября 2013

Следующие работали на меня в Red Hat Linux

wget http://cran.r-project.org/src/contrib/RMySQL_0.9-3.tar.gz
sudo R CMD INSTALL  --configure-args='--with-mysql-inc=/usr/include/mysql' --configure-args='--with-mysql-lib=/usr/lib64/mysql' RMySQL_0.9-3.tar.gz
1 голос
/ 09 апреля 2013

18 месяцев спустя, новый ноутбук, та же проблема.Возвращение на место преступления - извините, январь 2011 года;мы находимся в будущем, и эта установка все еще не доставляет удовольствия.

Извлеченные уроки:

-Обновленные RTools необходимы .Получите их .

-Вы видите ошибку по линии .onLoad failed in loadNamespace() for 'RMySQL', details?Похоже, это означает, что есть проблема с переменными вашей системной среды.

В R запустите

Sys.getenv('MYSQL_HOME')

Если он указывает путь, такой как

 [1] "C:\\Program Files\\MySQL\\MySQL Server 5.6"

, вывсе хорошо.Но если он дает вам пустую строку, вам нужно установить это.

Это все направления для Windows 7, но процесс в XP очень похож, если память служит.

1) Откройте Свойства системы> Дополнительно> Переменные среды.

2) На нижней панели «Системные переменные» нажмите «Создать».

3) Имя переменной - MYSQL_HOME, а значением является любой путь к вашей установке MySQL - у меня было C:\Program Files\MySQL\MySQL Server 5.6

Более новые версии MySQL, по-видимому, не создают переменную окружения при установке - это и отсутствие двоичных файлов для RMySQL объясняют, почему этот вопрос собрал 8 000 обращений.

- Все еще застряли?Вот две дополнительные подробные рецензии: 1 , 2

1 голос
/ 26 апреля 2012

Последние 2 дня я работал над установкой R с пакетом RMySQL, наконец-то получил решение, вот шаги для установки пакета RMySQL: -

  1. СКАЧАТЬ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕСЛЕДУЮЩИЕ ССЫЛКИ: * а.R2.13.2: Загрузить R из 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 Files\MySQL\MySQL Server 5.5\ 
    
      b. R_HOME: <drive>/path to R installation
         e.g. R_HOME=C:\Program Files\R\R-2.13.2\
    
      c. PATH: Modify path to accommodate the above variables. *
    

    Убедитесь, что следующие пути включены в ПУТЬ Windowsпеременная: \ Rtools \ 2.14 \ bin \ Rtools \ 2.14 \ MinGW \ bin \ Rtools \ 2.14 \ MinGW64 \ bin

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

    а.OPT: создайте папку OPT в C: \ Program Files \ MySQL \ MySQL Server 5.5 \ lib и скопируйте
    MYSQLLIB.LIB по указанному выше пути.Также скопируйте libmysql.dll в \\ R \ R-2.14.0 \ bin \ (64-разрядная версия) или \\ R \ R-2.14.0 \ bin \ i386 \ (32-разрядная версия) и в C: \ Windows \ System32.

b.Renviron.site: создайте или отредактируйте файл \\ R \ R-2.14.0 \ etc \ Renviron.site и добавьте строку: MYSQL_HOME = ”C: / Program Files / MySQL / MySQL Server 5.5 /” NB: ИСПОЛЬЗУЙТЕ ВПЕРЕДИ SLASHИ ДВОЙНЫЕ ЦИТАТЫ ЗДЕСЬ

c.libMySQL.dll: скопируйте этот файл в C: \ Program Files \ R \ R-2.13.2 \ bin \ i386, а также в C: \ Program Files \ R \ R-2.13.2 \ bin

  1. RUN COMMANDS

    a.Install.Packages: запустите R GUI, щелкнув значок R на рабочем столе или в меню «Пуск».Введите INSTALL.PACKAGES («RMySQL», type = «Sources»).Это позволит загрузить необходимое программное обеспечение из репозиториев.

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

  *COMMANDS:
  >library(RMySQL)
   >drv = dbDriver("MySQL")
   >con = dbConnect(drv,host="localhost",dbname="test",user="root",pass="root")
   >album = dbGetQuery(con,statement="select * from t_master")
   >album*
1 голос
/ 11 марта 2012

Добавьте каталог MySQL и RTools в PATH!

Вот мой PATH ; ~blah~;C:\Program Files\MySQL\MySQL Server 5.5\bin;c:\rtools\bin;C:\Rtools\gcc-4.6.3\bin;

1 голос
/ 26 мая 2011

Однако в настоящее время существует еще одно дополнительное требование (для сервера MySQL версии 5.5 и R2.12.1) в настоящее время следуйте инструкциям http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL, поскольку расположение файла libmySQL.dll отличается от того, которое ожидается в пакете.

т.е. для 64-битной компиляции. он ожидает, что libmySQL.dll находится в "$ {MYSQL_HOME}" / bin / libmySQL.dll так что просто скопируйте dll в каталог / bin, и он теперь скомпилируется.

для 32-битного компиляции. libmySQL.lib ожидается в "$ {MYSQL_HOME}" / lib / opt / libmysql.lib Повторное движение должно решить проблему.

В качестве альтернативы, если вы не хотите или не можете переместить эти файлы. Затем вы можете редактировать файлы исходного кода: Makevars.win Makevars.win32 Makevars.win64 соответственно указав на /lib/libmysql.dll /lib/libmysql.lib

...