programing

기존 MariaDB 타임스탬프 열을 로컬 표준시에서 UTC로 마이그레이션하는 방법

subpage 2023. 9. 26. 22:23
반응형

기존 MariaDB 타임스탬프 열을 로컬 표준시에서 UTC로 마이그레이션하는 방법

현재 저의 laravel config time zone은 '+6:00'으로 설정되어 있고 MariaDB database time zone은 SYSTEM으로 설정되어 있는데, 이 역시 +6:00입니다.이제 다른 시간대의 사용자를 수용해야 하므로 예기치 않은 시간 관련 문제를 방지하기 위해 모든 타임스탬프 값을 UTC로 마이그레이션해야 합니다.

MariaDB 문서에는 다음과 같이 명시되어 있습니다: https://mariadb.com/kb/en/timestamp/ #time-

열에서 TIMESTAMP 데이터 유형을 사용하는 경우 삽입된 값은 저장 시 세션의 시간대에서 UTC(Coordinated Universal Time)로 변환되고 검색 시 세션의 시간대로 다시 변환됩니다.

자, 여기가 제가 혼란스러워 하는 곳입니다.데이터를 저장할 때 세션 시간대가 어떻게 되든 항상 UTC에 타임스탬프가 저장되므로 데이터베이스의 어떤 것도 변경할 필요가 없다는 것을 위의 진술을 통해 알 수 있습니다.따라서 나중에 Laravel config에서 UTC로 시간대를 업데이트하면 해당 UTC 값을 받아야 합니다.하지만 Laravel config에서 Time zone을 UTC로 변경한 후에도 저는 여전히 유창한 모델에서 +6:00 형식으로 시간을 받고 있습니다.저는 여기서 무언가를 놓치고 있다고 생각하며 이에 대한 어떤 제안이라도 정말 감사하겠습니다.미리 감사드립니다.

언급URL : https://stackoverflow.com/questions/71487779/how-to-migrate-existing-mariadb-timestamp-columns-from-local-timezone-to-utc

반응형