MySQL

[MySQL] Load Data, 파일로 데이터 Import 하기

수노 SUNHO 2017. 10. 25. 09:30

DB의 데이터를 옮길 때가 있습니다. 

옮기는 다양한 방법 중에 하나로, MySQL 쿼리문을 이용하여 파일로 저장된 데이터를 DB로 옮기는 작업을 해봤습니다.


SQL문

LOAD DATA LOCAL INFILE '/path/your_data.csv'

INTO TABLE table_name

CHARACTER SET utf8

FIELDS TERMINATED BY ';'

LINES TERMINATED BY '\n'

(col1, col2, col3, ...)



LOAD DATA를 통하여 파일을 불러올 수 있는데, 여기서 주의할 점들이 있습니다.


1. LOCAL은 옵션

예를 들어, 실제 DB가 당신의 컴퓨터가 아니라 AWS, LINUX 등 다른 곳에 있는 경우에는 LOCAL을 붙여줘야 합니다.

그렇지 않으면 MySQL의 실제 위치에서 파일을 찾기 때문입니다.


2. utf8로 설정

CHARACTER SET을 utf8로 설정하지 않은 경우, 한글로 된 데이터를 넣으면 깨집니다.


3. ~ TERMINATED BY

이건 당신의 파일에 따라 설정이 다릅니다. 자세한 건 검색을..ㅎㅎ


4. 당신의 파일의 열 순으로 칼럼을 나열해주세요. 

엑셀 파일에 (이름, 나이, 아이디) 이런식으로 열을 채워넣었다면 쿼리문에서도 같은 순서로 적어주세요.