Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 시간대(Time Zone) 설정 방법 완벽 가이드

MySQL에서 현재 시간을 확인하려면 SELECT 문과 함께 now() 함수를 사용하면 됩니다. 아래 쿼리를 실행해 보겠습니다.

mysql> SELECT now();

위 쿼리를 실행하면 현재 시간이 출력됩니다. 결과는 다음과 같습니다.

+---------------------+
| now()               |
+---------------------+
| 2018-10-06 12:57:25 |
+---------------------+
1 row in set (0.02 sec)

SET 명령어로 시간대 설정하기

MySQL에서 시간대를 변경하려면 SET 명령어를 사용합니다. 기본 문법은 다음과 같습니다.

mysql> SET time_zone = "시간대 값";

세션 단위 시간대 설정

실제로 위 문법을 적용하여 시간대를 설정해 보겠습니다. 예를 들어 UTC 기준 +9:50으로 설정하는 쿼리는 다음과 같습니다.

mysql> SET time_zone = "+9:50";
Query OK, 0 rows affected (0.00 sec)

전역(Global) 시간대 설정

현재 세션뿐만 아니라 서버 전체에 시간대를 적용하고 싶다면 GLOBAL 키워드를 함께 사용하면 됩니다.

mysql> set global time_zone="+9:00";
Query OK, 0 rows affected (0.00 sec)

참고: 세션 단위로 설정한 시간대는 해당 연결에만 적용되며, 전역(Global)으로 설정하면 이후 새로 연결되는 모든 세션에 적용됩니다. 다만 전역 설정은 MySQL 서버를 재시작하면 초기화되므로 영구적으로 유지하려면 설정 파일(my.cnf 또는 my.ini)의 [mysqld] 섹션에 default-time-zone='+9:00'과 같이 지정하는 것이 좋습니다.