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

· 10년 전 · 2114

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,685
10년 전 조회 2,198
10년 전 조회 1,613
10년 전 조회 1,694
10년 전 조회 1,668
10년 전 조회 2,600
10년 전 조회 1,737
10년 전 조회 1,613
10년 전 조회 1,701
10년 전 조회 1,736
10년 전 조회 1,806
10년 전 조회 1,609
10년 전 조회 1,696
10년 전 조회 2,031
10년 전 조회 1,976
10년 전 조회 1,955
10년 전 조회 1,507
10년 전 조회 1,601
10년 전 조회 1,562
10년 전 조회 1,523
10년 전 조회 1,751
10년 전 조회 1,517
10년 전 조회 1,829
10년 전 조회 1,503
10년 전 조회 1,832
10년 전 조회 1,540
10년 전 조회 1,773
10년 전 조회 2,361
10년 전 조회 1,679
10년 전 조회 1,726
10년 전 조회 1,597
10년 전 조회 2,654
10년 전 조회 2,271
10년 전 조회 1,876
10년 전 조회 1,798
10년 전 조회 1,605
10년 전 조회 1,748
10년 전 조회 2,418
10년 전 조회 2,465
10년 전 조회 3,121
10년 전 조회 2,217
10년 전 조회 2,103
10년 전 조회 2,602
10년 전 조회 1,736
10년 전 조회 1,702
10년 전 조회 1,696
10년 전 조회 1,693
10년 전 조회 1,762
10년 전 조회 1,872
10년 전 조회 2,115
10년 전 조회 1,667
10년 전 조회 2,143
10년 전 조회 2,086
10년 전 조회 1,837
10년 전 조회 1,698
10년 전 조회 1,693
10년 전 조회 1,733
10년 전 조회 1,700
10년 전 조회 1,702
10년 전 조회 2,045
10년 전 조회 1,611
10년 전 조회 1,714
10년 전 조회 1,878
10년 전 조회 1,749
10년 전 조회 2,501
10년 전 조회 2,302
10년 전 조회 1,759
10년 전 조회 1,711
10년 전 조회 2,012
10년 전 조회 1,732
10년 전 조회 1,652
10년 전 조회 1,711
10년 전 조회 1,635
10년 전 조회 1,660
10년 전 조회 1,629
10년 전 조회 1,862
10년 전 조회 3,712
10년 전 조회 1,840
10년 전 조회 1,582
10년 전 조회 1,633
10년 전 조회 1,673
10년 전 조회 2,991
10년 전 조회 2,903
10년 전 조회 2,276
10년 전 조회 2,581
10년 전 조회 2,735
10년 전 조회 2,686
10년 전 조회 2,058
10년 전 조회 1,771
10년 전 조회 2,278
10년 전 조회 1,835
10년 전 조회 1,562
10년 전 조회 1,891
10년 전 조회 2,576
10년 전 조회 2,270
10년 전 조회 1,730
10년 전 조회 2,291
10년 전 조회 6,317
10년 전 조회 1,799
10년 전 조회 2,876