Troubleshooting
[서버 오류]DB와 서버 시간(Time Zone) 차이 문제
sukii
2024. 9. 2. 13:38
반응형
DB에 게시물 등록 일시가 24-09-02 09:49:24 로 저장되어 있는데, 컨트롤러에서 그 기록을 가져오면 자꾸 9시간 뒤(24-09-02 18:49:24)로 설정되어 있는 문제가 발생함.
문제의 원인은 등록 일시 컬럼의 데이터 타입이 DATETIME이였음.
이런 경우 문자열 자체를 가져오는 것이 아니라, 서버 시간을 기준으로 가져와질 수 있음.
그럼 서버시간과 DB 시간을 맞춰주면 됨.
구글링 결과, TOMCAT 서버 폴더 아래 > catalina.bat 파일 실행 후 > set CATALINA_OPTS=-Duser.timezone=GMT+09:00 을 삽입해주면 된다고 했다.
그런데 catalina 배치 파일이 실행이 되지 않아서 notepad를 관리자권한으로 실행 후, [파일] - [열기] 로 catalina 배치 파일을 열어서 위 파란색 문구를 추가해줬다. 그런데도 서버시간 안바뀜!!!!!!!
그래서 결국 내가 한 방법은...
1. 이클립스 - 변경할 서버 더블 클릭
2. [Open launch configuration] 클릭
3. [Arguments]탭에서 VM arguments 부분에 -Duser.timezone=GMT 추가
GMT 부분은 원하는 시간대에 맞춰서 ! ( ex. GMT+9 )
난 서버가 DB보다 9시간이 빠른 상태로 떠서 GMT로 맞춰주니 둘이 같아졌다 !
+ 참고)
DBEAVER에서 아래 쿼리를 이용해 DB서버 시간의 기준을 알 수 있음
SELECT @@global.time_zone, @@session.time_zone;
반응형