[英]adding RMySQL package to R fails (on 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"
困惑。 任何幫助將不勝感激!
這里描述了基本過程,但有幾個提示,所以我將描述整個解決方案(如果需要,請更改R版本和路徑) :
C:\\Program Files\\R\\R-2.12.1\\etc\\Renviron.site
並添加如MYSQL_HOME=C:/mysql
(mysql文件的路徑) 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
我基本上遵循了所有這些方向,包括Vanderbilt頁面上的方向,但出於某種原因,它似乎並不總是有效。 無論如何,希望這可能對我使用相同版本的東西的人有所幫助。
我偶然發現了在Windows7 64bit下安裝RMySQL的分步指南。
http://www.ahschulz.de/2013/07/23/installing-rmysql-under-windows/
我使用的軟件是:
按照上面的指南(提供截圖),我的安裝和加載RMySQL包工作。
非常感謝Arne Hendrik Schulz!
我在使用R 2.12.1 x64的Windows 7上遇到同樣的問題並通過以下方式解決:
PATH
變量中的R目錄更改為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
( R CMD INSTALL RMySQL_0.7-5.tar.gz
中的install.packages('RMySQL',type='source')
仍然無效)。 我在使用RMySQL包安裝R的最后2天工作,最后得到了解決方案,這里是安裝RMySQL包的步驟: -
從以下鏈接下載軟件:* a。 R2.13.2:從http://cran.stat.sfu.ca/index.html下載R.
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 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變量包含以下路徑: \\ Rtools \\ 2.14 \\ bin \\ Rtools \\ 2.14 \\ MinGW \\ bin \\ Rtools \\ 2.14 \\ MinGW64 \\ bin
創建文件夾和復制文件
一個。 OPT:在C:\\ Program Files \\ MySQL \\ MySQL Server 5.5 \\ lib下創建一個文件夾OPT並復制
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:USE FORWARD SLASH這里有雙重報價
C。 libMySQL.dll:將此文件復制到C:\\ Program Files \\ R \\ R-2.13.2 \\ bin \\ i386以及C:\\ Program Files \\ R \\ R-2.13.2 \\ bin
運行命令
一個。 Install.Packages:通過單擊桌面上的R圖標或從“開始”菜單運行R GUI。 輸入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年1月的自我; 我們將來,這個安裝仍然沒有任何樂趣。
得到教訓:
- 更新的RTools是必不可少的 。 得到他們 。
- 您是否看到.onLoad failed in loadNamespace() for 'RMySQL', details
錯誤.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次點擊。
以下為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
然而,您目前還有一個額外的要求(使用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
將MySQL和RTools目錄添加到PATH!
這是我的路徑; ~blah~;C:\\Program Files\\MySQL\\MySQL Server 5.5\\bin;c:\\rtools\\bin;C:\\Rtools\\gcc-4.6.3\\bin;
; ~blah~;C:\\Program Files\\MySQL\\MySQL Server 5.5\\bin;c:\\rtools\\bin;C:\\Rtools\\gcc-4.6.3\\bin;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.