-
Mysql 8.0 Timezone 설정하기Database/mysql 2020. 8. 16. 19:16
sql.SQLException: The server time zone value is unrecognized or represents more than one time zone. you must configure either the server or JDBC driver.
이런 경고문이 떴다.
# Timezone 확인 select @@global.time_zone, @@session.time_zone; # Timezone 설정 set global time_zone = 'Asia/Seoul'; set session time_zone = 'Asia/Seoul';
우선 설정파일을 수정하기 전에, 변수를 설정해서 타임존 변경이 되는지 확인한다.
타임존 관련 데이터가 없다면 아래와 같은 메세지를 출력하게 된다.
error 1298 (hy000) Unknown or incorrect time zone
타임존 관련 SQL 파일은 아래 링크에서 받을 수 있다.
https://dev.mysql.com/downloads/timezones.htmlPOSIX 와 NON POSIX
일단 설명에 따르면 "윤초"를 사용할지 여부에 따라 POSIX Standard냐, Non Posix이냐로 나뉜다. Windows(TM)을 포함한 대부분의 시스템은 POSIX Standard라고 하니, 이를 받아서 설치하자.
use mysql;
mysql 스키마 선택을 해준 다음에 해당 sql 구문을 실행해주어야 한다.약 47000줄의 sql이 실행되고 나면 타임존 데이터가 잘 생성되어 있을 것이다.
https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html
타임존 관련 공식 레퍼런스
[mysqld] ... default-time-zone='timezone'
위와 같은 설정을 my.cnf (윈도우즈의 경우에는 my.ini)에 추가한다. 여기서 설정된 값들은 서버가 재시작되면 반영된다.
JUnit 테스트 결과 연결이 성공적으로 되어 값을 잘 불러온 것을 알 수 있다.
'Database > mysql' 카테고리의 다른 글
mysql TCP/IP over ssh connection error with Ubuntu 20 (0) 2020.09.26