본문 바로가기

배우기/기록의 중요성

R에서의 Oracle DB Connect 방법

728x90
반응형

현업에서는 보통 분석할 모든 데이터들은 외부 서버로 떨어져 있다.

즉 분석서버 및 분석 DB 서버가 분리되어 있을 가능성이 크다. DBMS가 설치되어 있는 서버가 따로 있을 것이라는 의미이다.

그래서 이 게시글에서는 R에서 DB로 접속을 하여 원하는 데이터를 가져오는 방법을 기록해두려고 한다.

 

R은 데이터가 저장되는 공간이 없는 SW이므로 DB연결 후 데이터를 불러와야 한다. R에서의 통신 담당인 RJDBC패키지(64bit)와 oracle에서의 통신담당인 ojdbc.jar 파일이 필요하다(ojdbc.jar 는 oracle 설치 시 자동 생성된다).

그리고 RJDBC 버전과 ojdbc.jar 버전이 일치하여야 한다(64bit).

 

집에서 테스트 할 수 있는 방법으로, 내 PC에 있는 R에서 내 PC에 있는 DB에 접속을 해보도록 하겠다.

먼저 target DB 정보(64bit)를 확인하여야 한다.

 

1) target DB 정보 확인

cmd창에 lsnrctl status 로 확인할 수 있다.

우리가 알아야 할 것은 IP, PORT, USERID, PW 가 되겠다.

 

2) R에서 oracle 통신담당인 RJDBC패키지 설치(DB마다 설치하는 패키지가 다름)

 

3) oracle에서의 통신담당인 ojdbc.jar(자동설치) 가 있는지 확인

oracle 설치 시 압축 파일 해제한 곳(setting 파일 있는 곳)에 jdbc 폴더  > lib 폴더 안에 있다.

 

 

4) DB Connect

 

jdbcdirver를 실행 후 

dbConnect를 실행한다.

각 부분에는 내 PC에 맞는 설정을 넣어주면 되고 계정과 비번까지 넣어주면 되겠다.

 

오류가 없다면 잘 실행된 것이고 dbGetQuery에서 쿼리를 짜면 된다.

 

 

이렇게 DB 불러오기는 성공이다.

 

 

728x90

 

연습문제를 하나 풀어보자.

target DB에 있는 student 테이블과 exam_01 테이블, hakjum 테이블을 join하여 학생 정보와 시험성적, 학점 정보를 출력하여라.

 

 

출력 확인 끝!

728x90
반응형