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

· 10년 전 · 1922

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,517
10년 전 조회 2,024
10년 전 조회 1,457
10년 전 조회 1,511
10년 전 조회 1,524
10년 전 조회 2,439
10년 전 조회 1,556
10년 전 조회 1,453
10년 전 조회 1,534
10년 전 조회 1,586
10년 전 조회 1,666
10년 전 조회 1,457
10년 전 조회 1,511
10년 전 조회 1,862
10년 전 조회 1,817
10년 전 조회 1,796
10년 전 조회 1,353
10년 전 조회 1,458
10년 전 조회 1,419
10년 전 조회 1,375
10년 전 조회 1,597
10년 전 조회 1,370
10년 전 조회 1,673
10년 전 조회 1,342
10년 전 조회 1,687
10년 전 조회 1,371
10년 전 조회 1,613
10년 전 조회 2,212
10년 전 조회 1,520
10년 전 조회 1,588
10년 전 조회 1,419
10년 전 조회 2,505
10년 전 조회 2,117
10년 전 조회 1,707
10년 전 조회 1,636
10년 전 조회 1,469
10년 전 조회 1,580
10년 전 조회 2,255
10년 전 조회 2,315
10년 전 조회 2,954
10년 전 조회 2,075
10년 전 조회 1,947
10년 전 조회 2,452
10년 전 조회 1,572
10년 전 조회 1,543
10년 전 조회 1,516
10년 전 조회 1,524
10년 전 조회 1,599
10년 전 조회 1,697
10년 전 조회 1,923
10년 전 조회 1,473
10년 전 조회 1,987
10년 전 조회 1,924
10년 전 조회 1,670
10년 전 조회 1,540
10년 전 조회 1,523
10년 전 조회 1,580
10년 전 조회 1,539
10년 전 조회 1,537
10년 전 조회 1,871
10년 전 조회 1,443
10년 전 조회 1,550
10년 전 조회 1,719
10년 전 조회 1,608
10년 전 조회 2,338
10년 전 조회 2,140
10년 전 조회 1,596
10년 전 조회 1,559
10년 전 조회 1,849
10년 전 조회 1,593
10년 전 조회 1,481
10년 전 조회 1,547
10년 전 조회 1,498
10년 전 조회 1,513
10년 전 조회 1,484
10년 전 조회 1,719
10년 전 조회 3,569
10년 전 조회 1,685
10년 전 조회 1,429
10년 전 조회 1,493
10년 전 조회 1,512
10년 전 조회 2,840
10년 전 조회 2,731
10년 전 조회 2,119
10년 전 조회 2,429
10년 전 조회 2,588
10년 전 조회 2,528
10년 전 조회 1,895
10년 전 조회 1,612
10년 전 조회 2,131
10년 전 조회 1,699
10년 전 조회 1,435
10년 전 조회 1,752
10년 전 조회 2,448
10년 전 조회 2,121
10년 전 조회 1,597
10년 전 조회 2,147
10년 전 조회 6,175
10년 전 조회 1,647
10년 전 조회 2,728