2014-08-31 3 views
0

Я установил R3.0.1. Rtools также установлен. Установлена ​​MySQL версии 5.7. Я хочу подключить R к MySQL, и я пытаюсь сделать это через пакет RMySQL в R. Хотя установка RMySQL наконец-то завершена после рассмотрения различных вопросов SO, команда библиотеки дает ошибку. См. Ниже полные журналы R. Пожалуйста помоги.R библиотека RMySQL не запускается

> install.packages("RMySQL",type="source") 
trying URL 'http://cran.rstudio.com/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' ... 
** package 'RMySQL' successfully unpacked and MD5 sums checked 
checking for $MYSQL_HOME... C:/Program Files/MySQL/MySQL Server 5.7 
cygwin warning: 
MS-DOS style path detected: C:/Program 
Preferred POSIX equivalent is: /cygdrive/c/Program 
CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
Consult the user's guide for more details about POSIX paths: 
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
test: Files/MySQL/MySQL: unknown operand 
** libs 
Warning: this package has a non-empty 'configure.win' file, 
so building only the main architecture 

cygwin warning: 
MS-DOS style path detected: D:/SOFTWA~1/R-30~1.3/etc/x64/Makeconf 
Preferred POSIX equivalent is: /cygdrive/d/SOFTWA~1/R-30~1.3/etc/x64/Makeconf 
CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
Consult the user's guide for more details about POSIX paths: 
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
gcc -m64 -I"D:/SOFTWA~1/R-30~1.3/include" -DNDEBUG -I"C:/Program Files/MySQL/MySQL  Server 5.7"/include -I"d:/RCompile/CRANpkg/extralibs64/local/include"  -O2 -Wall - std=gnu99 -mtune=core2 -c RS-DBI.c -o RS-DBI.o 
RS-DBI.c: In function 'RS_na_set': 
RS-DBI.c:1219:11: warning: variable 'c' set but not used [-Wunused-but-set-variable] 
gcc -m64 -I"D:/SOFTWA~1/R-30~1.3/include" -DNDEBUG -I"C:/Program Files/MySQL/MySQL Server 5.7"/include -I"d:/RCompile/CRANpkg/extralibs64/local/include"  -O2 -Wall - std=gnu99 -mtune=core2 -c RS-MySQL.c -o RS-MySQL.o 
RS-MySQL.c: In function 'RS_MySQL_fetch': 
RS-MySQL.c:657:13: warning: variable 'fld_nullOk' set but not used [-Wunused-but-set- variable] 
RS-MySQL.c: In function 'RS_DBI_invokeBeginGroup': 
RS-MySQL.c:1137:30: warning: variable 'val' set but not used [-Wunused-but-set-variable] 
RS-MySQL.c: In function 'RS_DBI_invokeNewRecord': 
RS-MySQL.c:1158:20: warning: variable 'val' set but not used [-Wunused-but-set-variable] 
RS-MySQL.c: In function 'RS_MySQL_dbApply': 
RS-MySQL.c:1219:38: warning: variable 'fld_nullOk' set but not used [-Wunused-but-set-variable] 
gcc -m64 -shared -s -static-libgcc -o RMySQL.dll tmp.def RS-DBI.o RS-MySQL.o C:/Program Files/MySQL/MySQL Server 5.7/bin/libmySQL.dll - Ld:/RCompile/CRANpkg/extralibs64/local/lib/x64 -Ld:/RCompile/CRANpkg/extralibs64/local/lib -LD:/SOFTWA~1/R-30~1.3/bin/x64 -lR 
installing to D:/Softwares/R-3.0.3/library/RMySQL/libs/x64 
** R 
** inst 
** preparing package for lazy loading 
Creating a generic function for 'format' from package 'base' in package 'RMySQL' 
Creating a generic function for 'print' from package 'base' in package 'RMySQL' 
** help 
*** installing help indices 
** building package indices 
** installing vignettes 
** testing if installed package can be loaded 
MYSQL_HOME defined as C:/Program Files/MySQL/MySQL Server 5.7 
* DONE (RMySQL) 

The downloaded source packages are in 
‘C:\Users\mitrabhanu.panda\AppData\Local\Temp\RtmpgZHT8R\downloaded_packages’ 

> library(RMySQL) 
Looking in C:\Program Files/MySQL, C:/MySQL, D:/MySQL, E:/MySQL, F:/MySQL, G:/MySQL, C:/xampp/MySQL, D:/xampp/MySQL, E:/xampp/MySQL, F:/xampp/MySQL, G:/xampp/MySQL, C:/Apps/MySQL, D:/Apps/MySQL, E:/Apps/MySQL, F:/Apps/MySQL, G:/Apps/MySQL 
Found C:\Program Files/MySQL 
Error : .onLoad failed in loadNamespace() for 'RMySQL', details: 
call: setwd(bin) 
error: character argument expected 
Error: package or namespace load failed for ‘RMySQL’ 

Пожалуйста, дайте мне знать, что я сделал неправильно.

+0

Почему бы не использовать [RJDBC] (http://cran.r-project.org/web/packages/RJDBC/index.html)? Я приведу пример извлечения записей из mysql, используя его в качестве ответа. – hd1

+0

Это ответили много раз на SO. например http://stackoverflow.com/questions/23545796/another-error-when-installing-rmysql-in-windows-8-1?rq=1 –

ответ

0

Как написано в моем комментарии, вот пример кода для чтения таблицы из MySQL:

require(RJDBC) 
j <- JDBC(classPath='/path/to/mysql/jdbc/jar', driverClass='com.mysql.jdbc.Driver') 
connection <- dbConnect(j, 'jdbc:mysql://localhost/databasename', 'myusername','mypassword') 
on.exit(dbDisconnect(connection)) 
data.frame.from.sql <- dbReadTable(connection, 'tablename') 

Это будет читать таблицу с именем имя_таблицы из имя_базы_данных в data.frame.from. sql как R кадр данных, с которым вы можете манипулировать по своему усмотрению. Надеюсь, это поможет.

+0

Спасибо, но даже это создавало проблемы. Я перезапустил RStudio с доступом администратора и теперь работает RMySQL. – user1859050

+0

Я отмечаю это как ответ, поскольку он дает другой способ сделать то же самое. – user1859050

Смежные вопросы