본문 바로가기
데이터베이스

[MySQL] 대용량 CSV 파일을 데이터베이스에 Import

by worldcenter 2024. 11. 28.

 

대용량 CSV 파일을 데이터베이스에 Import

 

현재 20만건의 서울시 식당 데이터(.csv)를 MySQL 데이터베이스(v8.4)에 Import 하려고 합니다. 이 때 기존에 사용하고 있던 IDE인 IntelliJ Ultimate를 사용해서 Import 해보겠습니다.

 

아래는 Import하고자 하는 CSV 파일 입니다. 기본적으로 import를 진행하게 되면 파일명은 테이블명이 되고, csv 파일 내 1번째 행의 컬럼명이 적절한 영문 컬럼명으로 변환되어 Import 되기 때문에 미리 컬럼명들을 프로젝트 로직에 맞춰 변경했습니다.

 

IntelliJ에서 import할 테이블을 선택하고 Import/Export > Import Data from File(s)를 선택합니다.

 

다음과 같이 미리보기가 보여지고 OK를 선택하면 데이터가 테이블에 로드 됩니다.

 

conversion failed

데이터를 로드하였으나 아래와 같이 에러가 발생하며 Import에 실패합니다.

119267:56: conversion failed: "2024.5.31 11:36" to datetime (update_at)
119268:53: conversion failed: "2024.5.31 10:08" to datetime (update_at)
119269:46: conversion failed: "2024.5.30 16:02" to datetime (update_at)
119270:49: conversion failed: "2024.7.11 16:24" to datetime (update_at)

 

이를 해결하기 위해서 엑셀에서 셀서식으로 들어가 사용자 지정 서식을 통해 yyyy-mm-dd hh:mm:ss 형식으로 날짜 형식을 변경하였습니다. 

 

이후 Import 다시 진행해보면 정상적으로 데이터가 Insert 된 것을 확인할 수 있습니다.