기억할것들/SQL

MySQL TimeZone 설정하기.

야채호빵v 2018. 12. 18. 13:49

가끔 개발을 하다보면 기본 타임존이 설정되어야 하는 경우들이 있다.

(왠만해서 시스템 시간을 가져다 쓰지만)


어쨌든 우리들은 귀찮으니까 보통 my.cnf 파일을 열고 [mysqld] 의 하단부에


1
default-time-zone=Asia/Seoul
cs


을 입력하고 서비스를 재시작! 하는데,

이게 왠걸 에러가 뜬다.  (안뜨면 땡큐)


에러가 뜰 경우에는 mysql 쿼리창을 열고


1
2
3
4
SELECT b.name, a.time_zone_id
FROM mysql.time_zone AS a
     LEFT OUTER JOIN mysql.time_zone_name AS b
        ON a.time_zone_id = b.time_zone_id;
cs

라고 지긋이 쿼리를 날려보면 역시! 아무것도 뜨지 않는다.

설정할 타임존 테이블이 없어서 에러를 뿜었나보다.


그럼 mysql에 타임존 정보를 넣어주겠다.

mysql 서비스가 올라와 있는 서버에


1
$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
cs



라고 입력해 주면 뭔가 프로세스가 진행이 된다 된다...!

그리고 다시 mysql 에 접속하여 위 쿼리를 입력하면 timezone 리스트가 마구마구 올라온다.


그럼 다시 맨 처음에 설정하려고 했던 my.cnf 파일을 설정한다. 

그리고 서비스 재시작.


음 매우 잘되는군.