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

· 10년 전 · 2014

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,578
10년 전 조회 2,096
10년 전 조회 1,516
10년 전 조회 1,583
10년 전 조회 1,590
10년 전 조회 2,512
10년 전 조회 1,627
10년 전 조회 1,523
10년 전 조회 1,607
10년 전 조회 1,648
10년 전 조회 1,728
10년 전 조회 1,531
10년 전 조회 1,594
10년 전 조회 1,937
10년 전 조회 1,893
10년 전 조회 1,870
10년 전 조회 1,424
10년 전 조회 1,533
10년 전 조회 1,482
10년 전 조회 1,437
10년 전 조회 1,665
10년 전 조회 1,431
10년 전 조회 1,734
10년 전 조회 1,420
10년 전 조회 1,756
10년 전 조회 1,452
10년 전 조회 1,680
10년 전 조회 2,286
10년 전 조회 1,593
10년 전 조회 1,646
10년 전 조회 1,513
10년 전 조회 2,570
10년 전 조회 2,181
10년 전 조회 1,786
10년 전 조회 1,717
10년 전 조회 1,547
10년 전 조회 1,656
10년 전 조회 2,326
10년 전 조회 2,388
10년 전 조회 3,041
10년 전 조회 2,145
10년 전 조회 2,025
10년 전 조회 2,522
10년 전 조회 1,653
10년 전 조회 1,614
10년 전 조회 1,617
10년 전 조회 1,616
10년 전 조회 1,683
10년 전 조회 1,785
10년 전 조회 2,015
10년 전 조회 1,570
10년 전 조회 2,067
10년 전 조회 2,003
10년 전 조회 1,746
10년 전 조회 1,622
10년 전 조회 1,599
10년 전 조회 1,656
10년 전 조회 1,611
10년 전 조회 1,604
10년 전 조회 1,946
10년 전 조회 1,526
10년 전 조회 1,634
10년 전 조회 1,785
10년 전 조회 1,676
10년 전 조회 2,417
10년 전 조회 2,216
10년 전 조회 1,673
10년 전 조회 1,628
10년 전 조회 1,920
10년 전 조회 1,664
10년 전 조회 1,565
10년 전 조회 1,625
10년 전 조회 1,568
10년 전 조회 1,582
10년 전 조회 1,563
10년 전 조회 1,796
10년 전 조회 3,644
10년 전 조회 1,752
10년 전 조회 1,504
10년 전 조회 1,563
10년 전 조회 1,603
10년 전 조회 2,920
10년 전 조회 2,817
10년 전 조회 2,203
10년 전 조회 2,498
10년 전 조회 2,657
10년 전 조회 2,612
10년 전 조회 1,982
10년 전 조회 1,701
10년 전 조회 2,202
10년 전 조회 1,775
10년 전 조회 1,500
10년 전 조회 1,830
10년 전 조회 2,518
10년 전 조회 2,195
10년 전 조회 1,668
10년 전 조회 2,226
10년 전 조회 6,253
10년 전 조회 1,739
10년 전 조회 2,808