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

· 10년 전 · 1822

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,417
10년 전 조회 1,932
10년 전 조회 1,360
10년 전 조회 1,415
10년 전 조회 1,442
10년 전 조회 2,335
10년 전 조회 1,480
10년 전 조회 1,369
10년 전 조회 1,451
10년 전 조회 1,492
10년 전 조회 1,571
10년 전 조회 1,371
10년 전 조회 1,432
10년 전 조회 1,772
10년 전 조회 1,725
10년 전 조회 1,698
10년 전 조회 1,248
10년 전 조회 1,378
10년 전 조회 1,331
10년 전 조회 1,272
10년 전 조회 1,499
10년 전 조회 1,279
10년 전 조회 1,578
10년 전 조회 1,265
10년 전 조회 1,573
10년 전 조회 1,264
10년 전 조회 1,522
10년 전 조회 2,092
10년 전 조회 1,446
10년 전 조회 1,501
10년 전 조회 1,314
10년 전 조회 2,402
10년 전 조회 2,004
10년 전 조회 1,605
10년 전 조회 1,534
10년 전 조회 1,356
10년 전 조회 1,491
10년 전 조회 2,162
10년 전 조회 2,198
10년 전 조회 2,837
10년 전 조회 1,983
10년 전 조회 1,832
10년 전 조회 2,345
10년 전 조회 1,462
10년 전 조회 1,441
10년 전 조회 1,401
10년 전 조회 1,426
10년 전 조회 1,482
10년 전 조회 1,608
10년 전 조회 1,823
10년 전 조회 1,374
10년 전 조회 1,872
10년 전 조회 1,831
10년 전 조회 1,569
10년 전 조회 1,441
10년 전 조회 1,421
10년 전 조회 1,475
10년 전 조회 1,459
10년 전 조회 1,443
10년 전 조회 1,778
10년 전 조회 1,347
10년 전 조회 1,455
10년 전 조회 1,636
10년 전 조회 1,525
10년 전 조회 2,244
10년 전 조회 2,076
10년 전 조회 1,512
10년 전 조회 1,477
10년 전 조회 1,747
10년 전 조회 1,512
10년 전 조회 1,386
10년 전 조회 1,447
10년 전 조회 1,406
10년 전 조회 1,421
10년 전 조회 1,387
10년 전 조회 1,625
10년 전 조회 3,474
10년 전 조회 1,593
10년 전 조회 1,351
10년 전 조회 1,405
10년 전 조회 1,428
10년 전 조회 2,743
10년 전 조회 2,650
10년 전 조회 2,042
10년 전 조회 2,342
10년 전 조회 2,483
10년 전 조회 2,432
10년 전 조회 1,798
10년 전 조회 1,509
10년 전 조회 2,055
10년 전 조회 1,586
10년 전 조회 1,353
10년 전 조회 1,651
10년 전 조회 2,344
10년 전 조회 2,023
10년 전 조회 1,498
10년 전 조회 2,052
10년 전 조회 6,083
10년 전 조회 1,548
10년 전 조회 2,621