[MySQL] TIMESTAMP 한국 시간으로

Eunhye Kim·2024년 2월 16일

DB

목록 보기
1/4

이슈

Vercel에 빌드된 URL과 AWS RDS에서 생성한DB를 사용해서 API테스트 중,
당시 테스트 시간이 2/16 새벽 2시쯤이었지만, timestamp에서 적용된 시간은 2/15 5시로 한국시간이 아닌 다른 다라 시간으로 적용되어 있었습니다.

commit_day는 커밋한 날짜가 표시되어야 해서 2/16에 커밋을 했으면 2/16일 날짜로 데이터가 들어와야 합니다.
처음에는 commit_day 또한 2/15로 데이터가 적용이 되어서, 날짜를 적용한 코드에서 timeZone: ‘Asia/Seoul’를 추가해서 2/16로 만들었지만 여전히 timestamp는 2/15 상태라 DB측에 원인이 있구나 라는 생각을 했습니다. (참고로 local에서는 한국시간으로 문제없이 적용이 되어있기에 DB문제라고 확신했습니다.)

today = new Date().toLocaleDateString(‘ko-KR, {
          timeZone: ‘Asia/Seoul’,
        });

원인 및 해결

찾아본 결과 제가 사용하는 AWS RDS timezone이 Asia/Seoul로 설정이 안 되있어서 생긴 이슈였습니다.
RDS > 파라미터 그룹 > 파라미터 그룹 수정에서
time_zone을 Asia/Seoul로 변경해주고

RDS > 데이터베이스
에서 인스턴스를 재부팅 한 결과

한국시간으로 제대로 timestamp가 들어오는걸 확인할 수 있었습니다.

  • 제 컴퓨터 시간
  • timestamp시간
profile
개발에 몰두하며 성장하는 도중에 얻은 인사이트에 희열을 느낍니다.

0개의 댓글