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

· 10년 전 · 2073

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,637
10년 전 조회 2,160
10년 전 조회 1,571
10년 전 조회 1,651
10년 전 조회 1,630
10년 전 조회 2,557
10년 전 조회 1,690
10년 전 조회 1,571
10년 전 조회 1,659
10년 전 조회 1,700
10년 전 조회 1,767
10년 전 조회 1,566
10년 전 조회 1,648
10년 전 조회 1,987
10년 전 조회 1,946
10년 전 조회 1,920
10년 전 조회 1,474
10년 전 조회 1,576
10년 전 조회 1,528
10년 전 조회 1,488
10년 전 조회 1,719
10년 전 조회 1,482
10년 전 조회 1,786
10년 전 조회 1,467
10년 전 조회 1,799
10년 전 조회 1,506
10년 전 조회 1,732
10년 전 조회 2,332
10년 전 조회 1,642
10년 전 조회 1,692
10년 전 조회 1,562
10년 전 조회 2,611
10년 전 조회 2,234
10년 전 조회 1,837
10년 전 조회 1,756
10년 전 조회 1,580
10년 전 조회 1,706
10년 전 조회 2,379
10년 전 조회 2,435
10년 전 조회 3,085
10년 전 조회 2,187
10년 전 조회 2,073
10년 전 조회 2,558
10년 전 조회 1,695
10년 전 조회 1,664
10년 전 조회 1,663
10년 전 조회 1,663
10년 전 조회 1,728
10년 전 조회 1,835
10년 전 조회 2,074
10년 전 조회 1,636
10년 전 조회 2,105
10년 전 조회 2,049
10년 전 조회 1,799
10년 전 조회 1,664
10년 전 조회 1,654
10년 전 조회 1,699
10년 전 조회 1,659
10년 전 조회 1,661
10년 전 조회 1,994
10년 전 조회 1,571
10년 전 조회 1,675
10년 전 조회 1,831
10년 전 조회 1,723
10년 전 조회 2,467
10년 전 조회 2,268
10년 전 조회 1,721
10년 전 조회 1,674
10년 전 조회 1,977
10년 전 조회 1,702
10년 전 조회 1,615
10년 전 조회 1,677
10년 전 조회 1,605
10년 전 조회 1,627
10년 전 조회 1,591
10년 전 조회 1,826
10년 전 조회 3,680
10년 전 조회 1,808
10년 전 조회 1,543
10년 전 조회 1,603
10년 전 조회 1,641
10년 전 조회 2,960
10년 전 조회 2,869
10년 전 조회 2,245
10년 전 조회 2,549
10년 전 조회 2,701
10년 전 조회 2,660
10년 전 조회 2,026
10년 전 조회 1,742
10년 전 조회 2,246
10년 전 조회 1,811
10년 전 조회 1,528
10년 전 조회 1,856
10년 전 조회 2,554
10년 전 조회 2,234
10년 전 조회 1,705
10년 전 조회 2,262
10년 전 조회 6,291
10년 전 조회 1,770
10년 전 조회 2,848