[MySQL] csv 파일을 직접 MySQL 테이블로 Import 하는 방법 (대용량 파일 import 팁)

· 10년 전 · 1324

MySQL 테이블에 데이터를 넣는 방법 중 csv 파일을 직접 넣는 방법이 있다.

 

csv 파일과 DB 테이블 구조가 일치하면 아래와 같이 입력하면 된다.

 

LOAD DATA LOCAL INFILE "filePath"

INTO TABLE dbName.tableName FIELDS TERMINATED BY ",";

 

 

만약 파일의 크기가 크고 테이블에 index가 걸려 있으면 시간이 굉장히 오래 걸릴 수 있다.

그럴 경우에는 아래와 같이 index를 먼저 해제해 주고 파일을 올린 다음 다시 index를 걸면 상당히 빠르게 테이블에 데이터를 넣을 수 있다.

 

 

ALTER TABLE dbName.tableName DISABLE KEYS;

LOAD DATA local INFILE "filePath"

INTO TABLE dbName.tableName FIELDS TERMINATED BY ",";

ALTER TABLE dbName.tableName ENABLE KEYS;

 

대략 2GB 정도 되는 파일도 10분 정도로 import가 완료됐다.

 

 

만약 csv 파일 구조와 DB 테이블 구조가 다른 경우는 아래 샘플 sql 문 참조해서 import 한다.

 

 

 

LOAD DATA LOCAL INFILE 'file_name'

INTO TABLE table_name

FIELDS TERMINATED BY ','

ENCLOSED BY '"'

LINES TERMINATED BY '\n'

(column1,column2,column3, ...);

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
10년 전 조회 971
10년 전 조회 1,496
10년 전 조회 905
10년 전 조회 990
10년 전 조회 979
10년 전 조회 1,878
10년 전 조회 1,000
10년 전 조회 873
10년 전 조회 1,003
10년 전 조회 1,022
10년 전 조회 1,107
10년 전 조회 896
10년 전 조회 968
10년 전 조회 1,308
10년 전 조회 1,256
10년 전 조회 1,251
10년 전 조회 774
10년 전 조회 896
10년 전 조회 885
10년 전 조회 830
10년 전 조회 1,036
10년 전 조회 842
10년 전 조회 1,141
10년 전 조회 793
10년 전 조회 1,136
10년 전 조회 814
10년 전 조회 1,076
10년 전 조회 1,608
10년 전 조회 936
10년 전 조회 972
10년 전 조회 800
10년 전 조회 1,890
10년 전 조회 1,520
10년 전 조회 1,113
10년 전 조회 1,037
10년 전 조회 840
10년 전 조회 952
10년 전 조회 1,673
10년 전 조회 1,704
10년 전 조회 2,353
10년 전 조회 1,457
10년 전 조회 1,325
10년 전 조회 1,842
10년 전 조회 968
10년 전 조회 900
10년 전 조회 910
10년 전 조회 926
10년 전 조회 995
10년 전 조회 1,111
10년 전 조회 1,325
10년 전 조회 863
10년 전 조회 1,375
10년 전 조회 1,325
10년 전 조회 1,067
10년 전 조회 959
10년 전 조회 936
10년 전 조회 968
10년 전 조회 947
10년 전 조회 959
10년 전 조회 1,279
10년 전 조회 881
10년 전 조회 976
10년 전 조회 1,137
10년 전 조회 1,043
10년 전 조회 1,768
10년 전 조회 1,605
10년 전 조회 1,040
10년 전 조회 962
10년 전 조회 1,301
10년 전 조회 1,037
10년 전 조회 910
10년 전 조회 992
10년 전 조회 931
10년 전 조회 955
10년 전 조회 893
10년 전 조회 1,153
10년 전 조회 2,998
10년 전 조회 1,120
10년 전 조회 872
10년 전 조회 925
10년 전 조회 950
10년 전 조회 2,276
10년 전 조회 2,163
10년 전 조회 1,560
10년 전 조회 1,865
10년 전 조회 2,004
10년 전 조회 1,943
10년 전 조회 1,319
10년 전 조회 1,048
10년 전 조회 1,577
10년 전 조회 1,094
10년 전 조회 902
10년 전 조회 1,186
10년 전 조회 1,888
10년 전 조회 1,561
10년 전 조회 1,015
10년 전 조회 1,604
10년 전 조회 5,590
10년 전 조회 1,098
10년 전 조회 2,175