Добавить пакет RMySQL в R не удается (в Windows)?
Я не могу понять, почему мой пакет 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 ответов
Базовый процесс описан здесь, но есть несколько советов, поэтому я опишу все решение (пожалуйста, измените версию R и пути при необходимости):
- Установите последнюю версию RTools отсюда
- установить MySQL или заголовочные и библиотечные файлы mysql
- создать или редактировать файл
C:\Program Files\R\R-2.12.1\etc\Renviron.site
и добавить строку какMYSQL_HOME=C:/mysql
(путь к вашим файлам mysql) - скопируйте libmysql.lib из mysql/lib в mysql/lib/opt для соответствия зависимостям.
- скопировать libmysql.dll в
C:\Program Files\R\R-2.12.1\bin
илиwindows/system32
каталог. - бежать
install.packages('RMySQL',type='source')
и подождите, пока компиляция закончится.
Это работало для меня на Windows 7 64-битной, поэтому не должно быть проблем с 32-битными версиями
Изначально выложено здесь (аналогичный вопрос).
Сначала я бы попробовал следовать указаниям на этой странице: http://biostat.mc.vanderbilt.edu/wiki/Main/RMySQL
Затем убедитесь, что на вашем компьютере действительно есть клиент MySQL, а не только сам сервер. У меня была проблема, когда мне приходилось использовать более старый двоичный файл для клиента, но вы можете скачать их с веб-сайта mysql.
Я создал двоичный файл, который может работать для людей:
http://kenahoo.blogspot.com/2011/09/rmysql-binary-for-windows-7.html
Я в основном следовал всем этим указаниям, в том числе на странице Вандербильта, но по тем или иным причинам это не всегда работает. Во всяком случае, надеюсь, что это может быть полезно для людей, которые имеют те же версии материала, который я использовал.
Я наткнулся на это пошаговое руководство по установке RMySQL под Windows7 64bit.
http://www.ahschulz.de/2013/07/23/installing-rmysql-under-windows/
Программное обеспечение, которое я использовал:
- ОС Windows 8
- R3.0.2 - 64 бит
- Rtools 3.1
- MySQL Server Community Edition 5.6 - 64 бит
Следуя вышеприведенному руководству (со скриншотами), моя установка и загрузка пакета RMySQL работает.
Большое спасибо Арне Хендрик Шульц!
У меня была такая же проблема в Windows 7 с R 2.12.1 x64, и я решил ее следующим образом:
- Изменение каталога R в моем
PATH
переменная кC:\Program Files\R\R-2.12.1\bin\x64
(а не просто...\R-2.12.1\bin
). - копирование
...\MySQL Server 5.5\lib\libmysql.dll
в...\MySQL Server 5.5\bin\
, - Бег
R CMD INSTALL RMySQL_0.7-5.tar.gz
в cmd.exe (install.packages('RMySQL',type='source')
в R все равно не получится).
Следующая работала для меня в 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
Последние 2 дня я работал над установкой R с пакетом RMySQL, наконец-то получил решение для этого, вот шаги по установке пакета RMySQL: -
СКАЧАТЬ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИЗ СЛЕДУЮЩИХ ССЫЛК: *a. 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*
УСТАНАВЛИВАЙТЕ СЛЕДУЮЩИЕ ПЕРЕМЕННЫЕ ОКРУЖАЮЩЕЙ СРЕДЫ
* 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. *
Убедитесь, что в переменную PATH Windows включены следующие пути: \ Rtools \ 2.14 \ bin \ Rtools \ 2.14 \ MinGW \ bin \ Rtools \ 2.14 \ MinGW64 \ bin
СОЗДАТЬ ПАПКИ И КОПИРОВАЛЬНЫЕ ФАЙЛЫ
а. 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.
б. Renviron.site: создайте или отредактируйте файл \\R\R-2.14.0\etc\Renviron.site и добавьте строку: MYSQL_HOME =”C:/Program Files/MySQL/MySQL Server 5.5/ / NB: ИСПОЛЬЗУЙТЕ FORWARD SLASH И ДВОЙНЫЕ ЦИТАТЫ ЗДЕСЬ
с. libMySQL.dll: скопируйте этот файл в C:\Program Files\R\R-2.13.2\bin\i386, а также в C: \ Program Files \ R \ R-2.13.2 \ bin
ВЫПОЛНИТЬ КОМАНДЫ
а. Install.Packages: запустите R GUI, щелкнув значок R на рабочем столе или в меню "Пуск". Введите INSTALL.PACKAGES ("RMySQL", type = "Sources"). Это позволит загрузить необходимое программное обеспечение из репозиториев.
б. Командная строка: скопируйте загруженный 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*
Спустя 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
Добавьте каталог MySQL и RTools в PATH!
Вот мой путь ; ~blah~;C:\Program Files\MySQL\MySQL Server 5.5\bin;c:\rtools\bin;C:\Rtools\gcc-4.6.3\bin;
Однако в настоящее время существует еще одно дополнительное требование (с версией 5.5 и R2.12.1 сервера MySQL), следуя инструкциям 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
Как сказал Марек. Для этого пакета нет бинарных файлов Windows. У меня были похожие проблемы на моем Mac, когда я пытался установить RPostgreSQL (потому что для Mac нет двоичного кода), в конце концов мне пришлось скомпилировать его самостоятельно и изменить несколько файлов.
Для части MySQL (если вы не знаете много о MySQL), вы можете использовать WAMP, который по общему признанию больше, чем вам нужно, но его легко установить, запустить и отключить.
Для некоторой помощи компиляции вы могли бы быть заинтересованы в Rtools
НТН
Кстати, какие окна вы запускаете (извините, если я пропустил это)