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

· 10년 전 · 2051

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,619
10년 전 조회 2,138
10년 전 조회 1,547
10년 전 조회 1,634
10년 전 조회 1,618
10년 전 조회 2,543
10년 전 조회 1,679
10년 전 조회 1,558
10년 전 조회 1,645
10년 전 조회 1,679
10년 전 조회 1,758
10년 전 조회 1,552
10년 전 조회 1,634
10년 전 조회 1,976
10년 전 조회 1,930
10년 전 조회 1,908
10년 전 조회 1,460
10년 전 조회 1,565
10년 전 조회 1,512
10년 전 조회 1,478
10년 전 조회 1,699
10년 전 조회 1,468
10년 전 조회 1,766
10년 전 조회 1,451
10년 전 조회 1,786
10년 전 조회 1,486
10년 전 조회 1,718
10년 전 조회 2,321
10년 전 조회 1,627
10년 전 조회 1,681
10년 전 조회 1,552
10년 전 조회 2,595
10년 전 조회 2,220
10년 전 조회 1,823
10년 전 조회 1,746
10년 전 조회 1,570
10년 전 조회 1,682
10년 전 조회 2,357
10년 전 조회 2,418
10년 전 조회 3,073
10년 전 조회 2,175
10년 전 조회 2,050
10년 전 조회 2,550
10년 전 조회 1,683
10년 전 조회 1,649
10년 전 조회 1,650
10년 전 조회 1,644
10년 전 조회 1,712
10년 전 조회 1,816
10년 전 조회 2,052
10년 전 조회 1,616
10년 전 조회 2,091
10년 전 조회 2,033
10년 전 조회 1,784
10년 전 조회 1,656
10년 전 조회 1,638
10년 전 조회 1,688
10년 전 조회 1,643
10년 전 조회 1,641
10년 전 조회 1,979
10년 전 조회 1,557
10년 전 조회 1,665
10년 전 조회 1,812
10년 전 조회 1,706
10년 전 조회 2,451
10년 전 조회 2,249
10년 전 조회 1,704
10년 전 조회 1,654
10년 전 조회 1,959
10년 전 조회 1,692
10년 전 조회 1,600
10년 전 조회 1,660
10년 전 조회 1,590
10년 전 조회 1,611
10년 전 조회 1,586
10년 전 조회 1,816
10년 전 조회 3,667
10년 전 조회 1,793
10년 전 조회 1,534
10년 전 조회 1,590
10년 전 조회 1,627
10년 전 조회 2,945
10년 전 조회 2,854
10년 전 조회 2,233
10년 전 조회 2,536
10년 전 조회 2,689
10년 전 조회 2,643
10년 전 조회 2,017
10년 전 조회 1,733
10년 전 조회 2,235
10년 전 조회 1,799
10년 전 조회 1,517
10년 전 조회 1,848
10년 전 조회 2,544
10년 전 조회 2,220
10년 전 조회 1,692
10년 전 조회 2,247
10년 전 조회 6,277
10년 전 조회 1,759
10년 전 조회 2,832