본문 바로가기
AWS

[AWS] S3 파일 업로드시 CSV 파일 한글 깨짐 현상 (해결)

by z00h 2025. 4. 9.

 

member 테이블의 레코드가 담겨있는 CSV 파일을 이전 포스팅에서 한셀을 이용해서 S3에 업로드 하였는데 

추가 실습을 위하여 레코드를 40개정도 추가 후 다시 Athena로 쿼리를 사용하는 과정에서 문제가 생겼다.

 

한셀로 CSV 저장하는 과정에서 쉼표 구분자로 저장이 되지 않아 Athena에서 파일을 잘 읽어오지 못하였다.

어쩔수 없이 Excel 파일로 연결 후 '쉼표 분리'로 저장을 하였는데

이때 한글이 깨진 상태로 파일이 저장되는 문제가 발생하여 이를 해결하는 과정을 포스팅 하려고 한다.

 

 

아래와 같이 member.csv 파일을 열면 한글이 깨져있는 상태다.

 

 

 

 

Athena는 파일 인코딩이 UTF-8일 경우 자동으로 처리하지만,
CSV 파일이 BOM(Byte Order Mark) 없는 UTF-8이라면 가끔 깨짐 현상이 발생한다.

→ 그래서 BOM 포함 UTF-8로 저장해줘야 한다.

 

 

 

✅ 해결방안 : 메모장으로 BOM 포함 UTF-8로 저장

  1. .csv 파일을 메모장으로 열기

 

 

 

 

   2. 파일 → 다른 이름으로 저장

 

 

 

  3. 저장 창 아래 설정 확인:

  • 파일 형식: 모든 파일 (*.*)
  • 인코딩: 반드시 UTF-8 (서명 있음)

👉 보통은 UTF-8 with BOM 또는 UTF-8 (서명 있음)으로 뜬다.

 

 

 

 

메모장에서 저장한 인코딩 : UTF-8(BOM) CSV파일을 S3에 업로드후 쿼리를 다시 실행해보면

 

 

 

 

정상적으로 추가된 레코드가 한글깨짐 현상 없이 SELECT 된 것을 확인 할 수있다!