MySQL 타임존(Time Zone) 명령어 정리

2022년 9월 14일
조회수 327
코멘트0

목차

TimeZone 변경

MySQL(MariaDB)에서 타임존은 set time_zone명령어로 변경 할 수 있다. 단 이 명령어는 현재 접속된 컨넥션에만 영향을 받으며 재 접속시에는 서버의 타임존을 따라간다.

MariaDB [(none)]> SET TIME_ZONE='+09:00';
Query OK, 0 rows affected (0.000 sec)</code>
</pre>

<p><code>Asia/Seoul</code>와 같이 타임존을 직접 입력하여 변경도 가능하다.</p>

<pre><code>MariaDB [(none)]&gt; SET TIME_ZONE=&#39;Asia/Seoul&#39;;
Query OK, 0 rows affected (0.000 sec)

 

Timezone 코드가 데이터베이스에 없는 경우

만약, ERROR 1298 (HY000): Unknown or incorrect time zone: 'Asia/Seoul'와 같은 에러가 발생한다면 데이터베이스에 타임존 코드를 추가해줘야 한다.

이 문서에서는 리눅스 Ubuntu 배포판의 경우만 다루며, 기타 설치 방법에 대해서는 하단에 참조에 기록한다.

 

Ubuntu

$ sudo apt update
$ sudo apt install tzdata
$ ls /usr/share/zoneinfo/
$ mysql_tzinfo_to_sql /usr/share/zoneinfo/ &gt; ~/zoneinfo.sql
$ cat ~/zoneinfo.sql | sudo mysql -u root mysql -p
MariaDB [(none)]&gt; SELECT name FROM mysql.time_zone_name;

 

참조

댓글 0