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

· 10년 전 · 1965

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,545
10년 전 조회 2,054
10년 전 조회 1,485
10년 전 조회 1,540
10년 전 조회 1,550
10년 전 조회 2,464
10년 전 조회 1,587
10년 전 조회 1,477
10년 전 조회 1,564
10년 전 조회 1,606
10년 전 조회 1,693
10년 전 조회 1,485
10년 전 조회 1,541
10년 전 조회 1,888
10년 전 조회 1,841
10년 전 조회 1,822
10년 전 조회 1,384
10년 전 조회 1,481
10년 전 조회 1,441
10년 전 조회 1,399
10년 전 조회 1,620
10년 전 조회 1,394
10년 전 조회 1,695
10년 전 조회 1,374
10년 전 조회 1,714
10년 전 조회 1,407
10년 전 조회 1,630
10년 전 조회 2,237
10년 전 조회 1,544
10년 전 조회 1,606
10년 전 조회 1,462
10년 전 조회 2,532
10년 전 조회 2,144
10년 전 조회 1,737
10년 전 조회 1,668
10년 전 조회 1,502
10년 전 조회 1,611
10년 전 조회 2,278
10년 전 조회 2,347
10년 전 조회 2,989
10년 전 조회 2,097
10년 전 조회 1,975
10년 전 조회 2,475
10년 전 조회 1,605
10년 전 조회 1,565
10년 전 조회 1,553
10년 전 조회 1,565
10년 전 조회 1,627
10년 전 조회 1,727
10년 전 조회 1,966
10년 전 조회 1,513
10년 전 조회 2,017
10년 전 조회 1,959
10년 전 조회 1,704
10년 전 조회 1,574
10년 전 조회 1,556
10년 전 조회 1,607
10년 전 조회 1,565
10년 전 조회 1,562
10년 전 조회 1,903
10년 전 조회 1,478
10년 전 조회 1,585
10년 전 조회 1,749
10년 전 조회 1,635
10년 전 조회 2,369
10년 전 조회 2,172
10년 전 조회 1,625
10년 전 조회 1,584
10년 전 조회 1,872
10년 전 조회 1,622
10년 전 조회 1,511
10년 전 조회 1,581
10년 전 조회 1,525
10년 전 조회 1,539
10년 전 조회 1,519
10년 전 조회 1,752
10년 전 조회 3,601
10년 전 조회 1,714
10년 전 조회 1,460
10년 전 조회 1,527
10년 전 조회 1,549
10년 전 조회 2,877
10년 전 조회 2,760
10년 전 조회 2,152
10년 전 조회 2,459
10년 전 조회 2,614
10년 전 조회 2,561
10년 전 조회 1,928
10년 전 조회 1,657
10년 전 조회 2,155
10년 전 조회 1,736
10년 전 조회 1,461
10년 전 조회 1,788
10년 전 조회 2,479
10년 전 조회 2,149
10년 전 조회 1,632
10년 전 조회 2,179
10년 전 조회 6,204
10년 전 조회 1,685
10년 전 조회 2,761