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

· 10년 전 · 1934

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,527
10년 전 조회 2,032
10년 전 조회 1,465
10년 전 조회 1,520
10년 전 조회 1,534
10년 전 조회 2,445
10년 전 조회 1,568
10년 전 조회 1,457
10년 전 조회 1,544
10년 전 조회 1,592
10년 전 조회 1,672
10년 전 조회 1,468
10년 전 조회 1,520
10년 전 조회 1,869
10년 전 조회 1,822
10년 전 조회 1,805
10년 전 조회 1,358
10년 전 조회 1,465
10년 전 조회 1,429
10년 전 조회 1,385
10년 전 조회 1,605
10년 전 조회 1,376
10년 전 조회 1,682
10년 전 조회 1,357
10년 전 조회 1,691
10년 전 조회 1,384
10년 전 조회 1,622
10년 전 조회 2,217
10년 전 조회 1,527
10년 전 조회 1,592
10년 전 조회 1,433
10년 전 조회 2,514
10년 전 조회 2,130
10년 전 조회 1,715
10년 전 조회 1,649
10년 전 조회 1,478
10년 전 조회 1,586
10년 전 조회 2,258
10년 전 조회 2,321
10년 전 조회 2,964
10년 전 조회 2,086
10년 전 조회 1,953
10년 전 조회 2,458
10년 전 조회 1,583
10년 전 조회 1,547
10년 전 조회 1,528
10년 전 조회 1,533
10년 전 조회 1,610
10년 전 조회 1,708
10년 전 조회 1,935
10년 전 조회 1,484
10년 전 조회 1,995
10년 전 조회 1,934
10년 전 조회 1,678
10년 전 조회 1,549
10년 전 조회 1,528
10년 전 조회 1,590
10년 전 조회 1,546
10년 전 조회 1,547
10년 전 조회 1,879
10년 전 조회 1,454
10년 전 조회 1,563
10년 전 조회 1,729
10년 전 조회 1,615
10년 전 조회 2,349
10년 전 조회 2,150
10년 전 조회 1,608
10년 전 조회 1,563
10년 전 조회 1,859
10년 전 조회 1,601
10년 전 조회 1,490
10년 전 조회 1,556
10년 전 조회 1,510
10년 전 조회 1,522
10년 전 조회 1,497
10년 전 조회 1,730
10년 전 조회 3,580
10년 전 조회 1,689
10년 전 조회 1,436
10년 전 조회 1,499
10년 전 조회 1,524
10년 전 조회 2,850
10년 전 조회 2,739
10년 전 조회 2,133
10년 전 조회 2,437
10년 전 조회 2,597
10년 전 조회 2,536
10년 전 조회 1,905
10년 전 조회 1,625
10년 전 조회 2,139
10년 전 조회 1,707
10년 전 조회 1,440
10년 전 조회 1,762
10년 전 조회 2,459
10년 전 조회 2,126
10년 전 조회 1,605
10년 전 조회 2,152
10년 전 조회 6,183
10년 전 조회 1,656
10년 전 조회 2,736