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

· 10년 전 · 2156

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,715
10년 전 조회 2,229
10년 전 조회 1,646
10년 전 조회 1,733
10년 전 조회 1,713
10년 전 조회 2,624
10년 전 조회 1,773
10년 전 조회 1,647
10년 전 조회 1,741
10년 전 조회 1,765
10년 전 조회 1,834
10년 전 조회 1,644
10년 전 조회 1,734
10년 전 조회 2,066
10년 전 조회 2,009
10년 전 조회 1,985
10년 전 조회 1,532
10년 전 조회 1,636
10년 전 조회 1,592
10년 전 조회 1,558
10년 전 조회 1,777
10년 전 조회 1,552
10년 전 조회 1,861
10년 전 조회 1,541
10년 전 조회 1,865
10년 전 조회 1,574
10년 전 조회 1,799
10년 전 조회 2,391
10년 전 조회 1,706
10년 전 조회 1,765
10년 전 조회 1,629
10년 전 조회 2,685
10년 전 조회 2,303
10년 전 조회 1,911
10년 전 조회 1,829
10년 전 조회 1,644
10년 전 조회 1,783
10년 전 조회 2,456
10년 전 조회 2,495
10년 전 조회 3,146
10년 전 조회 2,250
10년 전 조회 2,130
10년 전 조회 2,631
10년 전 조회 1,763
10년 전 조회 1,731
10년 전 조회 1,724
10년 전 조회 1,717
10년 전 조회 1,793
10년 전 조회 1,909
10년 전 조회 2,157
10년 전 조회 1,703
10년 전 조회 2,166
10년 전 조회 2,123
10년 전 조회 1,873
10년 전 조회 1,746
10년 전 조회 1,725
10년 전 조회 1,763
10년 전 조회 1,733
10년 전 조회 1,729
10년 전 조회 2,079
10년 전 조회 1,656
10년 전 조회 1,745
10년 전 조회 1,914
10년 전 조회 1,781
10년 전 조회 2,528
10년 전 조회 2,325
10년 전 조회 1,794
10년 전 조회 1,741
10년 전 조회 2,037
10년 전 조회 1,760
10년 전 조회 1,685
10년 전 조회 1,742
10년 전 조회 1,660
10년 전 조회 1,694
10년 전 조회 1,668
10년 전 조회 1,899
10년 전 조회 3,751
10년 전 조회 1,866
10년 전 조회 1,613
10년 전 조회 1,667
10년 전 조회 1,712
10년 전 조회 3,018
10년 전 조회 2,939
10년 전 조회 2,309
10년 전 조회 2,609
10년 전 조회 2,763
10년 전 조회 2,708
10년 전 조회 2,087
10년 전 조회 1,797
10년 전 조회 2,306
10년 전 조회 1,864
10년 전 조회 1,583
10년 전 조회 1,924
10년 전 조회 2,598
10년 전 조회 2,301
10년 전 조회 1,745
10년 전 조회 2,317
10년 전 조회 6,345
10년 전 조회 1,834
10년 전 조회 2,897