본문 바로가기
MySQL

TIMESTAMP의 범위가 2038-01-19 03:14:07까지인 이유

by AsCE_hyunseung 2021. 4. 3.
  • 유닉스/리눅스 계열에서 사용되는 TIMESTAMP197011000초부터 몇초가 지났는지를 나타내는 정수이다.

 

  • Unix Timestamp가 만들어질 당시 대부분 32bit OS 밖에 존재하지 않았다. (32bit INT 범위 = − 2³¹ ~ 2³¹ − 1)
  • unsigned integer 사용할 경우 2³² − 1 까지 가능하지만 1970-01-01 이전을 나타낼 수 없었기때문에 signed integer 사용했다
  • 따라서 1970-01-01 00:00:00에서 2³¹ − 1 초를 더하면 2038-01-19 03:14:07이다.

'MySQL' 카테고리의 다른 글

서브쿼리  (0) 2021.05.05
쿼리 캐시  (0) 2021.05.02
count(*)와 인덱스  (0) 2021.04.09
인덱스 사용시 주의사항  (0) 2021.04.06
문자셋 변환  (0) 2021.04.03