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

· 10년 전 · 2180

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,741
10년 전 조회 2,243
10년 전 조회 1,663
10년 전 조회 1,754
10년 전 조회 1,733
10년 전 조회 2,648
10년 전 조회 1,797
10년 전 조회 1,663
10년 전 조회 1,769
10년 전 조회 1,778
10년 전 조회 1,859
10년 전 조회 1,665
10년 전 조회 1,752
10년 전 조회 2,088
10년 전 조회 2,026
10년 전 조회 1,999
10년 전 조회 1,563
10년 전 조회 1,656
10년 전 조회 1,615
10년 전 조회 1,575
10년 전 조회 1,795
10년 전 조회 1,572
10년 전 조회 1,882
10년 전 조회 1,557
10년 전 조회 1,889
10년 전 조회 1,592
10년 전 조회 1,819
10년 전 조회 2,405
10년 전 조회 1,725
10년 전 조회 1,783
10년 전 조회 1,649
10년 전 조회 2,702
10년 전 조회 2,330
10년 전 조회 1,926
10년 전 조회 1,850
10년 전 조회 1,656
10년 전 조회 1,802
10년 전 조회 2,474
10년 전 조회 2,516
10년 전 조회 3,171
10년 전 조회 2,266
10년 전 조회 2,155
10년 전 조회 2,651
10년 전 조회 1,783
10년 전 조회 1,746
10년 전 조회 1,737
10년 전 조회 1,738
10년 전 조회 1,814
10년 전 조회 1,932
10년 전 조회 2,181
10년 전 조회 1,730
10년 전 조회 2,177
10년 전 조회 2,146
10년 전 조회 1,898
10년 전 조회 1,766
10년 전 조회 1,752
10년 전 조회 1,786
10년 전 조회 1,759
10년 전 조회 1,745
10년 전 조회 2,095
10년 전 조회 1,669
10년 전 조회 1,770
10년 전 조회 1,936
10년 전 조회 1,805
10년 전 조회 2,550
10년 전 조회 2,345
10년 전 조회 1,816
10년 전 조회 1,753
10년 전 조회 2,063
10년 전 조회 1,777
10년 전 조회 1,705
10년 전 조회 1,764
10년 전 조회 1,691
10년 전 조회 1,718
10년 전 조회 1,693
10년 전 조회 1,912
10년 전 조회 3,781
10년 전 조회 1,890
10년 전 조회 1,641
10년 전 조회 1,683
10년 전 조회 1,739
10년 전 조회 3,041
10년 전 조회 2,962
10년 전 조회 2,336
10년 전 조회 2,634
10년 전 조회 2,777
10년 전 조회 2,724
10년 전 조회 2,108
10년 전 조회 1,816
10년 전 조회 2,325
10년 전 조회 1,881
10년 전 조회 1,593
10년 전 조회 1,939
10년 전 조회 2,616
10년 전 조회 2,318
10년 전 조회 1,765
10년 전 조회 2,329
10년 전 조회 6,366
10년 전 조회 1,853
10년 전 조회 2,910