티스토리 뷰

Database/CockroachDB

[CockroachDB] time zone

데브포유 2019. 8. 8. 21:14
반응형

현재 19.x 버전까지 CockroachDB의 Default Time Zone 은 'UTC' 입니다.

Oracle, MySQL, PostgreSQL처럼 Default Time Zone를 바꿀 수 없는 것 같습니다. (아직 설정을 못 찾음)

공식 문서에서 Time Zone 관련해서 찾아 보면 Session 레벨에서 Time Zone를 변경하는 방법만 소개되어 있습니다.

즉, 매번 CockroachDB에 접속한 후에 Session에 Time Zone를 설정해줘야 now(), current_date()와 같은 함수 

리턴 값이 시스템 시간과 동일하게 나옵니다.

 

<< Session 레벨에서 Time Zone 변경하기>>

> set time zone 9

 

위와 같이 해주면 시스템 시간과 동일해 집니다.

 

우리나라 time zone에 맞는 데이터를  저장해 보기

1. 위와 같이 접속시 time zone를 변경해 준다.

  -> set time zone 9

2. create table t_order ( order_no int primary key, 

                                                 order_time timestamptz

                                                )

3. insert into t_order values(1, current_timestamp());

4. select order_no

                 ,order_time

     from t_order;

=> 위 순서대로 진행해서 데이터를 저장하면 timestamp 값에 time zone 정보와 함께 저장되어 있습니다.

다시 DB에 접속해서 조회해 보면 저장된 데이터가 UTC 기준으로 보입니다.

set time zone 9 를 해주면, 우리나라 time zone으로 해서 데이터가 보여집니다.

 

 

반응형