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

· 10년 전 · 1942

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,536
10년 전 조회 2,040
10년 전 조회 1,474
10년 전 조회 1,525
10년 전 조회 1,538
10년 전 조회 2,451
10년 전 조회 1,573
10년 전 조회 1,462
10년 전 조회 1,552
10년 전 조회 1,600
10년 전 조회 1,677
10년 전 조회 1,475
10년 전 조회 1,525
10년 전 조회 1,876
10년 전 조회 1,828
10년 전 조회 1,811
10년 전 조회 1,373
10년 전 조회 1,473
10년 전 조회 1,435
10년 전 조회 1,393
10년 전 조회 1,612
10년 전 조회 1,381
10년 전 조회 1,684
10년 전 조회 1,362
10년 전 조회 1,701
10년 전 조회 1,391
10년 전 조회 1,627
10년 전 조회 2,221
10년 전 조회 1,535
10년 전 조회 1,599
10년 전 조회 1,446
10년 전 조회 2,518
10년 전 조회 2,136
10년 전 조회 1,731
10년 전 조회 1,655
10년 전 조회 1,486
10년 전 조회 1,596
10년 전 조회 2,265
10년 전 조회 2,333
10년 전 조회 2,973
10년 전 조회 2,091
10년 전 조회 1,961
10년 전 조회 2,466
10년 전 조회 1,589
10년 전 조회 1,553
10년 전 조회 1,537
10년 전 조회 1,551
10년 전 조회 1,617
10년 전 조회 1,714
10년 전 조회 1,943
10년 전 조회 1,492
10년 전 조회 2,008
10년 전 조회 1,941
10년 전 조회 1,687
10년 전 조회 1,557
10년 전 조회 1,538
10년 전 조회 1,600
10년 전 조회 1,554
10년 전 조회 1,552
10년 전 조회 1,887
10년 전 조회 1,466
10년 전 조회 1,570
10년 전 조회 1,738
10년 전 조회 1,623
10년 전 조회 2,356
10년 전 조회 2,158
10년 전 조회 1,615
10년 전 조회 1,568
10년 전 조회 1,865
10년 전 조회 1,607
10년 전 조회 1,494
10년 전 조회 1,572
10년 전 조회 1,516
10년 전 조회 1,529
10년 전 조회 1,509
10년 전 조회 1,738
10년 전 조회 3,585
10년 전 조회 1,695
10년 전 조회 1,445
10년 전 조회 1,511
10년 전 조회 1,530
10년 전 조회 2,861
10년 전 조회 2,750
10년 전 조회 2,143
10년 전 조회 2,449
10년 전 조회 2,606
10년 전 조회 2,543
10년 전 조회 1,914
10년 전 조회 1,635
10년 전 조회 2,147
10년 전 조회 1,720
10년 전 조회 1,449
10년 전 조회 1,777
10년 전 조회 2,471
10년 전 조회 2,137
10년 전 조회 1,615
10년 전 조회 2,169
10년 전 조회 6,187
10년 전 조회 1,669
10년 전 조회 2,744