25. R과 MySQL DB 연동하기
in Study on R Programming
Overview
R과 MySQL Database를 연동하여 데이터를 불러오는 방법을 알아본다.
MySQL 데이터 베이스의 데이터를 R으로 가져오기
MySQL 데이터 베이스의 데이터를 R으로 가져오기 위해 RMySQL
패키지를 사용하여 데이터를 가져올 수 있다.
이때, MySQL()
함수가 MySQL의 드라이버를 내장하고 있다.
Issue
Failed to connect to database: Error: Plugin caching_sha2_password could not be loaded
위와 같은 에러는 MySQL의 사용자 password가 갱신되지 않을 경우 뜬다.
다음과 같은 비밀번호 변경 쿼리문을 통해 해결한다.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '초기설정 비밀번호';
예제
# 쿼리문을 사용하기 위한 DBI 패키지
library(DBI)
library(RMySQL)
# host : '%'를 넣으면 외부접속, 내부 접속일 경우는 localhost를 넣는다.
# localhost일 경우 포트를 지정하지 않아도 작동한다.
con<-dbConnect(MySQL(), user="userid", password="password", dbname="databasename",host="localhost")
# Test용 dual 테이블
# 결과가 나오면 정상적으로 작동하는 것을 확인할 수 있다.
query01 <- 'select power(2, 10) from dual'
data <- dbGetQuery(con, query01)