database/mysql
[MySQL] UTC PST PDT KST와 datetime vs timestamp
moonsiri
2021. 12. 16. 11:27
728x90
반응형
UTC : 협정 세계시
Coordinated Universal Time/Universal Time Coordinated
국제 표준시.
UTC는 그리니치 평균시(GMT)에 기반하므로 GMT로도 불리기도 하는데, UTC와 GMT는 초의 소수점 단위에서만 차이가 나기 때문에 일상에서는 혼용된다. 기술적인 표기에서는 UTC가 사용된다.
PST : 태평양 표준시
Pacific Standard Time
UTC-8:00
북미에서 관찰되는 시간대 중 하나로 PDT는 이 시간대의 변형이다.
PDT : 태평양 일광 절약 시간
Pacific Daylight Time
UTC-7:00
서머타임이 포함된다.
KST : 한국 표준시
Korea Standard Time
UTC+9:00
Mysql의 Time Zone을 확인해보겠습니다.
mysql > SHOW VARIABLES LIKE '%time_zone%';
Variable_name Value
---------------- ------------
system_time_zone UTC
time_zone Asia/Seoul
datetime과 timestamp 타입을 컬럼을 가진 테이블을 생성합니다.
CREATE TABLE temp_date (
temp_datetime DATETIME,
temp_timestamp TIMESTAMP
);
현재 시간을 넣은 뒤 조회합니다.
INSERT INTO temp_date VALUES (NOW(), NOW());
mysql> SELECT * FROM temp_date;
temp_datetime temp_timestamp
------------------- ---------------------
2021-12-16 11:18:17 2021-12-16 11:18:17
시스템의 time zone을 변경하고 테이블을 다시 조회하면 timestamp의 값이 변경되는 것을 확인할 수 있습니다.
mysql> SET time_zone='America/New_York';
mysql> SHOW VARIABLES LIKE '%time_zone%';
Variable_name Value
---------------- ------------------
system_time_zone UTC
time_zone America/New_York
mysql> SELECT * FROM temp_date;
temp_datetime temp_timestamp
------------------- ---------------------
2021-12-16 11:18:17 2021-12-15 21:18:17
timesatmp의 값은 time_zone에 의존하는 것을 확인할 수 있습니다.
Datetime
1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
Timestamp
1970-01-01 00:00:01 ~ 2038-01-19 03:14:07
index가 더 빠르게 생성됩니다.
[Reference]
https://savvytime.com/converter/pdt-to-kst-utc/aug-1-2021/3am
728x90
반응형