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

· 10년 전 · 2125

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년 전 조회 1,689
10년 전 조회 2,202
10년 전 조회 1,618
10년 전 조회 1,701
10년 전 조회 1,675
10년 전 조회 2,607
10년 전 조회 1,742
10년 전 조회 1,621
10년 전 조회 1,707
10년 전 조회 1,746
10년 전 조회 1,812
10년 전 조회 1,621
10년 전 조회 1,702
10년 전 조회 2,041
10년 전 조회 1,984
10년 전 조회 1,961
10년 전 조회 1,514
10년 전 조회 1,607
10년 전 조회 1,564
10년 전 조회 1,531
10년 전 조회 1,757
10년 전 조회 1,522
10년 전 조회 1,837
10년 전 조회 1,510
10년 전 조회 1,840
10년 전 조회 1,547
10년 전 조회 1,780
10년 전 조회 2,367
10년 전 조회 1,681
10년 전 조회 1,738
10년 전 조회 1,601
10년 전 조회 2,659
10년 전 조회 2,278
10년 전 조회 1,882
10년 전 조회 1,807
10년 전 조회 1,612
10년 전 조회 1,756
10년 전 조회 2,430
10년 전 조회 2,471
10년 전 조회 3,125
10년 전 조회 2,224
10년 전 조회 2,108
10년 전 조회 2,608
10년 전 조회 1,742
10년 전 조회 1,711
10년 전 조회 1,701
10년 전 조회 1,700
10년 전 조회 1,774
10년 전 조회 1,881
10년 전 조회 2,126
10년 전 조회 1,675
10년 전 조회 2,146
10년 전 조회 2,093
10년 전 조회 1,843
10년 전 조회 1,704
10년 전 조회 1,703
10년 전 조회 1,740
10년 전 조회 1,705
10년 전 조회 1,710
10년 전 조회 2,052
10년 전 조회 1,624
10년 전 조회 1,723
10년 전 조회 1,884
10년 전 조회 1,755
10년 전 조회 2,509
10년 전 조회 2,310
10년 전 조회 1,766
10년 전 조회 1,718
10년 전 조회 2,015
10년 전 조회 1,738
10년 전 조회 1,659
10년 전 조회 1,715
10년 전 조회 1,637
10년 전 조회 1,670
10년 전 조회 1,635
10년 전 조회 1,872
10년 전 조회 3,716
10년 전 조회 1,846
10년 전 조회 1,589
10년 전 조회 1,640
10년 전 조회 1,680
10년 전 조회 2,999
10년 전 조회 2,914
10년 전 조회 2,281
10년 전 조회 2,589
10년 전 조회 2,741
10년 전 조회 2,693
10년 전 조회 2,063
10년 전 조회 1,774
10년 전 조회 2,283
10년 전 조회 1,840
10년 전 조회 1,565
10년 전 조회 1,897
10년 전 조회 2,583
10년 전 조회 2,280
10년 전 조회 1,733
10년 전 조회 2,297
10년 전 조회 6,322
10년 전 조회 1,807
10년 전 조회 2,879