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

· 10년 전 · 1852

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,441
10년 전 조회 1,948
10년 전 조회 1,376
10년 전 조회 1,436
10년 전 조회 1,459
10년 전 조회 2,362
10년 전 조회 1,503
10년 전 조회 1,385
10년 전 조회 1,471
10년 전 조회 1,514
10년 전 조회 1,600
10년 전 조회 1,388
10년 전 조회 1,449
10년 전 조회 1,789
10년 전 조회 1,746
10년 전 조회 1,717
10년 전 조회 1,276
10년 전 조회 1,397
10년 전 조회 1,351
10년 전 조회 1,294
10년 전 조회 1,517
10년 전 조회 1,303
10년 전 조회 1,603
10년 전 조회 1,282
10년 전 조회 1,599
10년 전 조회 1,291
10년 전 조회 1,539
10년 전 조회 2,122
10년 전 조회 1,460
10년 전 조회 1,524
10년 전 조회 1,338
10년 전 조회 2,427
10년 전 조회 2,028
10년 전 조회 1,625
10년 전 조회 1,555
10년 전 조회 1,384
10년 전 조회 1,513
10년 전 조회 2,185
10년 전 조회 2,227
10년 전 조회 2,861
10년 전 조회 1,998
10년 전 조회 1,854
10년 전 조회 2,369
10년 전 조회 1,492
10년 전 조회 1,470
10년 전 조회 1,437
10년 전 조회 1,453
10년 전 조회 1,517
10년 전 조회 1,629
10년 전 조회 1,853
10년 전 조회 1,401
10년 전 조회 1,895
10년 전 조회 1,850
10년 전 조회 1,590
10년 전 조회 1,461
10년 전 조회 1,445
10년 전 조회 1,499
10년 전 조회 1,479
10년 전 조회 1,461
10년 전 조회 1,806
10년 전 조회 1,363
10년 전 조회 1,474
10년 전 조회 1,645
10년 전 조회 1,538
10년 전 조회 2,257
10년 전 조회 2,084
10년 전 조회 1,526
10년 전 조회 1,495
10년 전 조회 1,767
10년 전 조회 1,526
10년 전 조회 1,404
10년 전 조회 1,473
10년 전 조회 1,429
10년 전 조회 1,439
10년 전 조회 1,414
10년 전 조회 1,637
10년 전 조회 3,491
10년 전 조회 1,612
10년 전 조회 1,369
10년 전 조회 1,426
10년 전 조회 1,446
10년 전 조회 2,771
10년 전 조회 2,665
10년 전 조회 2,055
10년 전 조회 2,362
10년 전 조회 2,505
10년 전 조회 2,449
10년 전 조회 1,820
10년 전 조회 1,528
10년 전 조회 2,070
10년 전 조회 1,600
10년 전 조회 1,367
10년 전 조회 1,667
10년 전 조회 2,369
10년 전 조회 2,038
10년 전 조회 1,519
10년 전 조회 2,074
10년 전 조회 6,100
10년 전 조회 1,559
10년 전 조회 2,635