Q. 기존 DB의 데이터들을 마이그레이션 하지 않아도, 시스템적으로 작동은 하지?

A. 네, 시스템은 작동합니다. 현재 상황을 설명드리면:

  1. 데이터베이스에 저장된 시간 데이터:

  2. 실제 동작 예시:

    DB에 저장된 시간(UTC): 2024-03-20 10:00:00

    애플리케이션에서 읽을 때(KST): 2024-03-20 19:00:00 (+9시간)

  3. JSON 직렬화/역직렬화:

따라서 기존 데이터를 마이그레이션하지 않아도:

다만, 데이터베이스에 직접 접근하여 시간 데이터를 확인할 때는 UTC로 보이게 되므로, 이 점만 주의하시면 됩니다.

Q. 데이터베이스에 UTC로 저장된건 KST로 변환해서 주고, KST로 넣은건 그냥 KST로 보여준다는 거지?

A. 아니요, 설명이 부정확했네요. 정확히 말씀드리면:

  1. 데이터베이스 저장 시:
  2. 데이터베이스 조회 시:

즉, 데이터베이스에는 항상 UTC로 저장되고, 애플리케이션과의 통신에서는 항상 KST로 변환되어 주고받아집니다. 이는 시간대 설정을 변경하기 전이나 후나 동일하게 적용됩니다.

이렇게 하는 이유는:

  1. 데이터베이스는 항상 UTC로 저장하는 것이 표준