[AWS] RMySQL 및 DBI 설치하기

RMySQL과 DBI는 R과 MySQL을 같이 사용하도록 도와주는 패키지이다.

헌데 이 패키지는 install.packages()로는 설치가 되지 않는다.

그러므로 다음과 같은 작업이 필요하다.

그래서 구글에 ‘rmysql install centOS’라고 검색해보았다.

그랬더니 다음과 같은 동영상을 발견할 수 있었다.

위 동영상과 같이 작업하면 문제 없이 설치 될 것이다. 그래도 문서로 작성해 보면,

일단, putty를 이용하여 AWS EC2 instance에 연결한다.

sudo yum install mysql-devel

sudo yum install r-devel

위 두 명령으로 r-devel과 mysql-devel을 설치한다.

다음 R을 실행시키고

R

install.packages(‘DBI’, repos=”http://cran.stat.nus.edu.sg/ “)

위처럼 입력하면 ‘DBI’ 패키지를 설치하게 된다.

다음으로,

install.packages(‘RMySQL’, repos=”http://cran.stat.nus.edu.sg/ “)

위처럼 입력하여 ‘RMySQL’ 패키지를 설치한다.

이로써, 영상은 ‘Done!’ 이라며 끝나게 된다.

하지만, 우리는 여기서 한가지 더 해야한다.

install.pacakges(‘DBI’,  type=’source’)

install.pacakges(‘RMySQL’,  type=’source’)

이렇게만 하여야 library() 함수를 이용해서 불러올 수 있게 된다.

 

우리가 ‘RCurl’ 같은 경우는 install.pacakges(“RCurl”)만 해도 설치가 가능하다.

그런데 왜 ‘RMySQL’, ‘DBI’, ‘dplyr’ 등과 같은 packages는 바로 설치가 안될까?

이유는 cpp로 작성되어 있기 때문이다.

그렇기 때문에 type=’source’로 하여금 install 할 필요가 생긴다.

 

다음에는 위 패키지들로 R에서 MySQL로 연결하는 것을 알아보도록 하자.

Advertisements

[AWS] MySQL 설치 및 HeidiSQL 연결

오늘은 Amazon EC2에서 Instance에 MySQL을 설치하고 HeidiSQL로 연결하는 것을 해보겠다.

참고로, HeidiSQL은 MySQL과 같은 SQL의 관리를 도와주는 프로그램이다.

1. Instance에 MySQL 설치

먼저, putty로 instance에 연결하여 아래 명령어를 실행해준다.

sudo yum install mysql-server

aws mysql install

aws mysql install success

그럼 위와 같이 설치를 완료하게 된다.

그리고 mysql server를 실행해주자.

sudo service mysqld start

aws mysql start

완료시 위와 같은 결과가 뜨게 된다.

설치가 끝나면 보안 설정을 하자.

sudo mysql_secure_installation

위와 같이 명령하면 root 계정에 비밀번호를 설정할 수 있다.

처음부터 enter, Y, (안전한 암호 2번), Y, Y, Y, Y 순서대로 함으로써 안전하게 root비번 설정!

참고 : http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/install-LAMP.html

그리고 매번 서버를 실행할 때 자동 실행 되도록 아래와 같이 명령어를 치자.

sudo chkconfig mysqld on

참고로, /etc/my.cnf를 편집하여 포트를 3306의 기본 포트에서 변경가능하다.

aws mysql my.conf.png

위처럼 포트가 적혀있으면 그 포트로 되고, 적혀있지 않으면 기본으로 3306  포트가 된다.

그리고 아래의 명령어로 mysql을 재시작 해준다.

sudo service mysqld restart

 

2. HeidiSQL 연결

이제 HeidiSQL로 연결을 해보자.

HeidiSQL을 실행하면 아래와 같이 입력해준다.

네트워크 유형은 MySQL(SSH tunnel) 로 설정하고, 호스트명/IP는 자신의 아이피로 한다.

(자신의 아이피는 127.0.0.1 or localhost)

포트는 MySQL 설치시 따로 바꾸지 않았다면 3306포트로 유지

HeidiSQL aws connect

이제 SSH 터널 탭에서 plink.exe의 위치를 잡아주고,

SSH 호스트 + 포트에 자신의 instance의 Public DNS를 넣어준다. 포트는 22로 한다.

plink.exe는 아래 링크를 타고 설치할 수도 있지만, putty 설치를 구글에 검색하면 그 중간에 plink.exe도 다운 받을 수 있다. 아래 링크를 들어가면 다운 받을 수 있다.

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

이제 사용자 명과 암호를 입력하는데 이전에 따로 암호를 설정하지 않았다면 빈칸으로 둔다.

다음 개인 키 파일을 불러온다. 확장자가 .ppk 였던 것으로 불러오면 된다.

pem을 불러오면 에러가 남으로 주의 할 것!

포트는 MySQL포트와 다른 포트를 적어주어야 한다. 3306을 썻다면 3307이나 3308처럼 쓰이지 않는 포트를 넣어주는 것이 중요하다.

HeidiSQL aws connect2

연기를 눌러 연결하면 아래와 같은 창으로 시작하게 될 것이다.

aws heidiSQL Complete

이로써 완료이다.

 

다음 번에는 이렇게 만들어진 SQL과 R로 무엇을 할 수 있는지 알아보도록 하겠다.