๋ฐ์ด๋๋ฆฌ์ ๋ํ Rob์ ์ ์์ ์ฌ์ฉํ์ฌ ์ค์น๋ postgres(PostGIS ํฌํจ)
์์ค์์ RPostgreSQL ๋๋ผ์ด๋ฒ๋ฅผ ์ค์นํ๋ ค๊ณ ํฉ๋๋ค. ์คํจ:
> install.packages("~/Downloads/RPostgreSQL_0.4.tar.gz", repos = NULL, type="source")
...
...console output...
...
** libs
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c RS-DBI.c -o RS-DBI.o
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c RS-PQescape.c -o RS-PQescape.o
In file included from RS-PQescape.c:7:
./RS-PostgreSQL.h:23:14: fatal error: 'libpq-fe.h' file not found
# include "libpq-fe.h"
^
1 error generated.
make: *** [RS-PQescape.o] Error 1
ERROR: compilation failed for package โRPostgreSQLโ
* removing โ/Users/sserbin/R/library/RPostgreSQLโ
Warning in install.packages :
installation of package โ/Users/sserbin/Downloads/RPostgreSQL_0.4.tar.gzโ had non-zero exit status
์ต์ฒจ๋จ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค.
> install.packages('RMySQL', repos='http://cran.rstudio.com/')
Installing package into โ/Users/sserbin/R/libraryโ
(as โlibโ is unspecified)
package โRMySQLโ is available as a source package but not as a binary
Warning in install.packages :
package โRMySQLโ is not available (for R version 3.1.0)
Rob, http://postgresapp.com/ ์์ Postgres ๋น๋๋ฅผ ์ฌ์ฉํ ๋ RPostgreSQL์ ์ด๋ป๊ฒ ์ค์นํ
pg_config http://iangow.wordpress.com/2014/05/09/installing-rpostgresql-with-r-3-1-0-mavericks-build/ ๋ฅผ ์ฐพ์์ผ ํ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ .app ๋ฒ์ ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ MacPorts ๋ฒ์ ๊ณผ ๊ฐ์ ์์น์ ์์ง ์์ต๋๋ค. Mac์์ ์ด์ ๊ด๋ จ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๊น? MacPorts ๋๋ .app ๋ฒ์ ์ Postgres๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น?
์ด๊ฒ์ ์๋, ์ฌ์ ํ ์ด์ด ์์ต๋๋ค .....
> Sys.setenv(PG_CONFIG='"/Users/sserbin/Library/Application Support/Postgres/var-9.3/postgresql.conf"')
> install.packages("~/Downloads/RPostgreSQL_0.4.tar.gz", repos = NULL, type="source")
MacPorts์ .app ๋ฒ์ ์ ๋ ๋ค ์ค์นํ๊ณ ์ถ์ง๋ ์์ง๋ง... ์๋ง๋ ์ด๊ฒ์ด ๋ฌธ์ ๊ฐ ์๋ ์๋ ์์ต๋๋ค. ์ผ์
ํฐ๋ฏธ๋์ pg_config๋ฅผ ์ ๋ ฅํ๋ฉด ์ด๋ป๊ฒ ๋๋์?
์ฐพ์ง ๋ชปํ๋ฉด ํฐ๋ฏธ๋์์ ๋ฃจํธ๋ก ๋ค์์ ์คํํ ์ ์์ต๋๊น?
echo "/Applications/Postgres93.app/Contents/MacOS/bin" > /etc/paths.d/postgresql
๊ทธ๋ฌ๋ฉด ๊ฒฝ๋ก์ postgres ๋ฐ์ด๋๋ฆฌ๊ฐ ์ถ๊ฐ๋๊ณ ์ ํฐ๋ฏธ๋์ ์ด๊ณ pg_config๋ฅผ ์ ๋ ฅํฉ๋๋ค. ์๋ํ๋ฉด R์ ์ฌ์ฉํ์ฌ postgresql์ ์ค์นํ์ญ์์ค.
๋ ๋ง์ ํจํค์ง๋ฅผ ์ค์นํ์ง ์๊ณ ๋ gdal, ncdf4 ๋ฑ์ ์ปดํ์ผํ ์ ์์์ผ๋ฏ๋ก 3.1์ด ๋ฐ์ด๋๋ฆฌ ํจํค์ง๋ก ๋ ์ฑ์์ง ๋๊น์ง ์กฐ๊ธ ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ง๊ธ์ http://cran.r-project.org/bin/macosx/old/ ์์ ์ธ์ ๋ ์ง ์ด์ ๋ฒ์ (3.0.3)์ ์ค์นํ ์ ์์ต๋๋ค.
๋๋ ๋ํ์ด ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋๋ ๋ํ ๊ทธ๊ฒ์ ํด๊ฒฐํ๊ธฐ ์ํด 3.0์ผ๋ก ๋กค๋ฐฑํ๋ค.
๋ชจ๋ ํจํค์ง๋ฅผ ์ง์ํ๊ธฐ ๋๋ฌธ์ ์ง๊ธ์ 3.0์ผ๋ก ๋กค๋ฐฑํ์ต๋๋ค. ๋ค๋ฅธ ์ต์ ์ R-3.1.0-snowleopard.pkg๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. R-3.1.0-snowleopard.pkg์๋ ์๋ก์ด XCode ์ปดํ์ผ๋ฌ์ ๋ชจ๋ ์๋ก์ด ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ง๋ ์์ง๋ง(์ ํํ ๋ฌด์์ธ์ง ํ์คํ์ง ์์) contrib ํด๋์ ๋ ๋ง์ ํจํค์ง๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ฐธ๊ณ ๋ก,
install.packages("PostgreSQL") ## if this worked
library(PostgreSQL)
dbparms <- list(driver = "PostgreSQL", dbname = "ebi_production", user = "bety", host = "ebi-forecast.igb.illinois.edu", password = "bety")
### put correct settings below
x <- dbConnect(dbDriver("PostgreSQL"),dbname = "bety", user = "bety", host = "myremoteserver", password = "bety")
rs <- dbSendQuery(x, statement = "select count(*) from traits")
rs
data <- fetch(rs, n = -1)
data
๊ฐ์ ๋ฌธ์ ๊ฐ ์์์ง๋ง(์ด ๋ฌธ์ ๋ ์ธํฐ๋ท ๊ฒ์์ ํตํด ์ฐพ์์ต๋๋ค) ์๋ํฉ๋๋ค.
ํฐ๋ฏธ๋์์ Google ์ฝ๋ ๋ณ๋ก ๋ค์ด๋ก๋
cd ~/Downloads
svn checkout http://rpostgresql.googlecode.com/svn/trunk/ rpostgresql-read-only
R์์ devtools๋ฅผ ์ฌ์ฉํ์ฌ ์ค์น
library(devtools) # install.packages('devtools') if needed
install('~/Downloads/rpostgresql-read-only/RPostgreSQL')
rpostgresql ๋ฌธ์ #61 ๋ก ๋ณด๊ณ ๋จ
์ด๊ฒ์ rposqresql์ ๋ฒ๊ทธ์ด๋ฏ๋ก ๋ซ์ต๋๋ค. @bbest ๋ฅผ ๊ฒ์
์ผ....์ง๊ธ์ ์๋ํ์ง ์์ต๋๋ค.
130-199-9-232:pecan sserbin$ cd ์คํฌ๋ฆฝํธ/
130-199-9-232:์คํฌ๋ฆฝํธ sserbin$ cd ~/๋ค์ด๋ก๋
130-199-9-232: sserbin$ svn ์ฒดํฌ์์ ๋ค์ด๋ก๋ http://rpostgresql.googlecode.com/svn/trunk/ rpostgresql-read-only
svn: E175002: URL ' http://rpostgresql.googlecode.com/svn/trunk '์ ์ ์ฅ์์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
svn: E175002: ' http://rpostgresql.googlecode.com/svn/trunk '์ ์ต์
: ์ํ ํ์์ค์ ์ฝ์ ์ ์์ต๋๋ค. ์๋ฒ(http://rpostgresql.googlecode.com)์์ ์ฐ๊ฒฐ์ ๋ซ์์ต๋๋ค.
130-199-9-232: sserbin$ svn ์ฒดํฌ์์ ๋ค์ด๋ก๋ http://rpostgresql.googlecode.com/svn/trunk/ rpostgresql-read-only
svn: E175002: URL ' http://rpostgresql.googlecode.com/svn/trunk '์ ์ ์ฅ์์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
svn: E175002: ' http://rpostgresql.googlecode.com/svn/trunk '์ ์ต์
: ์ํ ํ์์ค์ ์ฝ์ ์ ์์ต๋๋ค. ์๋ฒ(http://rpostgresql.googlecode.com)์์ ์ฐ๊ฒฐ์ ๋ซ์์ต๋๋ค.
@serbinsh ์ด๊ฒ์ ์ฝ๋๋ฅผ ์ฒดํฌ์์ํ ์ ์๋ ์ต์ ์ฒ๋ผ ๋ณด์ ๋๋ค. ์ปดํ์ผํด์๊ฐ ์๋๋๋ค. ๋ด Mac์์ ์ฝ๋๋ฅผ ์ ํ์ธํ ์ ์์ต๋๋ค. ๋คํธ์ํฌ์ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์์ต๋๊น?
์ด๊ฒ์ ์๋ํ์ต๋๋ค : http://computersandbuildings.com/how-to-install-rpostgresql-on-osx-mavericks/
๋ถ์ด. Mac์์ ์ด ์์
์ ์ํํ๋ ค๋ฉด ๋ ๋์ ๋ฐฉ๋ฒ์ด ์์ด์ผ ํฉ๋๋ค.
์์ !
R: install.packages('DBI')
๋ค์ด๋ก๋ ์์ค: http://cran.r-project.org/web/packages/RPostgreSQL/index.html
pg_config๋ฅผ ๊ฐ๋ฆฌํต๋๋ค.
sudo ln -s /Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config /usr/local/bin/
๊ทธ ๋ค์์
sudo R CMD ์ค์น RPostgreSQL_0.4.tar.gz
http://computersandbuildings.com/how-to-install-rpostgresql-on-osx-mavericks/
*RPostgreSQL ๋ฒ์ ์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
์ด ์ค๋ฅ๋ฅผ ๊ฒ์ํ๋ ์ฌ๋์ ๋ค์์ ์ํํด์ผ ํ ์๋ ์์ต๋๋ค.
sudo ln -s /usr/local/Cellar/postgresql /usr/local/opt/postgresql
๋๋ homebrew๋ฅผ ์ฌ์ฉํ์ฌ ์ค์นํ๋ ๊ฒฝ์ฐ ์ ์ฌํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ค๋ฅ๊ฐ ํ์๋ ์ ์์ต๋๋ค.
Library not loaded: /usr/local/opt/postgresql/lib/libpq.5.dylib
์ด์ ๋๋ฌธ์ image not found
.
์ด ์ค๋ ๋์ ์๋จ์ ํ์๋ libpq-fe.h not found
์ค๋ฅ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ํด๊ฒฐํ ํ์๋.
๋๋ ์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ๊ณ ์ณค๋ค.
> install.packages('DBI')
$ brew install postgresql
(๋ถํ์ํ ์ ์์)
$ sudo ln -s /usr/local/Cellar/postgresql /usr/local/opt/postgresql
์ด๋ ์ชฝ์ด ํธ๋ฆญ์ ์ํํ๋์ง ํ์คํ์ง ์์ง๋ง ์ง๊ธ์ ์๋ํฉ๋๋ค.
๋๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด libqp-dev
๋ฅผ ์ค์นํด์ผ ํ์ต๋๋ค.
sudo apt-get install libpq-dev
๋๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด
libqp-dev
๋ฅผ ์ค์นํด์ผ ํ์ต๋๋ค.
sudo apt-get install libpq-dev
๊ฐ์ฌํฉ๋๋ค!
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด
libqp-dev
๋ฅผ ์ค์นํด์ผ ํ์ต๋๋ค.sudo apt-get install libpq-dev