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. 당신의 파일의 열 순으로 칼럼을 나열해주세요.
엑셀 파일에 (이름, 나이, 아이디) 이런식으로 열을 채워넣었다면 쿼리문에서도 같은 순서로 적어주세요.
'MySQL' 카테고리의 다른 글
[MySQL] my.cnf 위치 찾기 (1) | 2017.12.20 |
---|---|
[MySQL] 데이터 EXPORT 하는 2가지 방법 (0) | 2017.11.07 |
[MySQL] 현재 프로세스 리스트 보기 (0) | 2017.10.31 |
[MySQL] Load Data 시도 중 secure_file_priv 문제 직면 (0) | 2017.10.26 |