현재 나의 Mysql DB timezone은 한국시간으로 맞춰져있다.
현재시간을 timestamp와 datetime으로 비교해보자.
create table datedemo
(
mydatetime datetime,
mytimestamp timestamp
);
insert into datedemo values ((now()), (now()));
똑같아 보일 수 있다.
select * from datedemo;
+---------------------+---------------------+
| mydatetime | mytimestamp |
+---------------------+---------------------+
| 2011-08-21 14:11:09 | 2011-08-21 14:11:09 |
+---------------------+---------------------+
SET TIME_ZONE = "america/new_york";
select * from datedemo;
+---------------------+---------------------+
| mydatetime | mytimestamp |
+---------------------+---------------------+
| 2011-08-21 14:11:09 | 2011-08-21 04:41:09 |
+---------------------+---------------------+
DB의 타임존을 변경하면 타임스탬프는 영향을 받는다.
KST, 한국시간은 UTC+9이므로
글로벌 서비스로 국가마다 다른 시간을 표현하려면, unixtime 또는 datetime으로 UTC0을 백엔드에서 리턴해야한다.
국가에 따른 시간표현은 프론트에서 구현한다.
unixtime 변환 사이트: https://www.unixtimestamp.com/
출처) https://nesoy.github.io/articles/2020-02/mysql-datetime-timestamp
'Server > DB' 카테고리의 다른 글
console.time()으로 DB 접속시간 확인하기 (0) | 2022.04.04 |
---|---|
NestJS에 Redis 설치하고 실행하기 (0) | 2022.03.25 |
Prisma multiple database connection (0) | 2022.03.17 |
Sequel Pro 연결 오류 (0) | 2022.03.16 |
Redis 설치하고 시작하기 (0) | 2022.03.10 |