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

· 10년 전 · 2166

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,728
10년 전 조회 2,237
10년 전 조회 1,655
10년 전 조회 1,747
10년 전 조회 1,726
10년 전 조회 2,636
10년 전 조회 1,786
10년 전 조회 1,657
10년 전 조회 1,751
10년 전 조회 1,769
10년 전 조회 1,847
10년 전 조회 1,654
10년 전 조회 1,741
10년 전 조회 2,077
10년 전 조회 2,020
10년 전 조회 1,993
10년 전 조회 1,548
10년 전 조회 1,644
10년 전 조회 1,604
10년 전 조회 1,569
10년 전 조회 1,786
10년 전 조회 1,559
10년 전 조회 1,869
10년 전 조회 1,551
10년 전 조회 1,882
10년 전 조회 1,580
10년 전 조회 1,809
10년 전 조회 2,399
10년 전 조회 1,717
10년 전 조회 1,772
10년 전 조회 1,643
10년 전 조회 2,696
10년 전 조회 2,323
10년 전 조회 1,917
10년 전 조회 1,841
10년 전 조회 1,653
10년 전 조회 1,798
10년 전 조회 2,464
10년 전 조회 2,502
10년 전 조회 3,157
10년 전 조회 2,263
10년 전 조회 2,141
10년 전 조회 2,638
10년 전 조회 1,771
10년 전 조회 1,737
10년 전 조회 1,732
10년 전 조회 1,728
10년 전 조회 1,803
10년 전 조회 1,918
10년 전 조회 2,167
10년 전 조회 1,715
10년 전 조회 2,172
10년 전 조회 2,141
10년 전 조회 1,885
10년 전 조회 1,760
10년 전 조회 1,735
10년 전 조회 1,775
10년 전 조회 1,740
10년 전 조회 1,738
10년 전 조회 2,086
10년 전 조회 1,661
10년 전 조회 1,760
10년 전 조회 1,926
10년 전 조회 1,797
10년 전 조회 2,538
10년 전 조회 2,335
10년 전 조회 1,808
10년 전 조회 1,743
10년 전 조회 2,048
10년 전 조회 1,768
10년 전 조회 1,691
10년 전 조회 1,753
10년 전 조회 1,680
10년 전 조회 1,704
10년 전 조회 1,682
10년 전 조회 1,907
10년 전 조회 3,768
10년 전 조회 1,882
10년 전 조회 1,626
10년 전 조회 1,676
10년 전 조회 1,724
10년 전 조회 3,030
10년 전 조회 2,951
10년 전 조회 2,319
10년 전 조회 2,620
10년 전 조회 2,769
10년 전 조회 2,717
10년 전 조회 2,095
10년 전 조회 1,806
10년 전 조회 2,316
10년 전 조회 1,871
10년 전 조회 1,590
10년 전 조회 1,931
10년 전 조회 2,607
10년 전 조회 2,311
10년 전 조회 1,759
10년 전 조회 2,323
10년 전 조회 6,358
10년 전 조회 1,841
10년 전 조회 2,901