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

· 10년 전 · 1830

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,430
10년 전 조회 1,942
10년 전 조회 1,367
10년 전 조회 1,417
10년 전 조회 1,448
10년 전 조회 2,346
10년 전 조회 1,491
10년 전 조회 1,376
10년 전 조회 1,461
10년 전 조회 1,501
10년 전 조회 1,585
10년 전 조회 1,377
10년 전 조회 1,440
10년 전 조회 1,780
10년 전 조회 1,734
10년 전 조회 1,706
10년 전 조회 1,256
10년 전 조회 1,387
10년 전 조회 1,343
10년 전 조회 1,282
10년 전 조회 1,506
10년 전 조회 1,287
10년 전 조회 1,591
10년 전 조회 1,274
10년 전 조회 1,586
10년 전 조회 1,276
10년 전 조회 1,527
10년 전 조회 2,104
10년 전 조회 1,451
10년 전 조회 1,512
10년 전 조회 1,328
10년 전 조회 2,414
10년 전 조회 2,014
10년 전 조회 1,615
10년 전 조회 1,541
10년 전 조회 1,368
10년 전 조회 1,501
10년 전 조회 2,174
10년 전 조회 2,209
10년 전 조회 2,848
10년 전 조회 1,990
10년 전 조회 1,842
10년 전 조회 2,352
10년 전 조회 1,474
10년 전 조회 1,453
10년 전 조회 1,414
10년 전 조회 1,443
10년 전 조회 1,497
10년 전 조회 1,618
10년 전 조회 1,831
10년 전 조회 1,386
10년 전 조회 1,879
10년 전 조회 1,837
10년 전 조회 1,579
10년 전 조회 1,448
10년 전 조회 1,430
10년 전 조회 1,482
10년 전 조회 1,470
10년 전 조회 1,450
10년 전 조회 1,786
10년 전 조회 1,352
10년 전 조회 1,464
10년 전 조회 1,641
10년 전 조회 1,533
10년 전 조회 2,250
10년 전 조회 2,079
10년 전 조회 1,518
10년 전 조회 1,484
10년 전 조회 1,759
10년 전 조회 1,517
10년 전 조회 1,392
10년 전 조회 1,460
10년 전 조회 1,415
10년 전 조회 1,426
10년 전 조회 1,398
10년 전 조회 1,629
10년 전 조회 3,484
10년 전 조회 1,601
10년 전 조회 1,362
10년 전 조회 1,418
10년 전 조회 1,435
10년 전 조회 2,761
10년 전 조회 2,655
10년 전 조회 2,049
10년 전 조회 2,351
10년 전 조회 2,497
10년 전 조회 2,439
10년 전 조회 1,805
10년 전 조회 1,516
10년 전 조회 2,062
10년 전 조회 1,588
10년 전 조회 1,362
10년 전 조회 1,658
10년 전 조회 2,356
10년 전 조회 2,032
10년 전 조회 1,507
10년 전 조회 2,063
10년 전 조회 6,090
10년 전 조회 1,552
10년 전 조회 2,626