티스토리 뷰
반응형
Oracle의 sysdate, systimestamp는 운영체제(OS) 시스템의 시간을 사용합니다. 그래서 일반적으로는 시스템의 시간대가 맞추어져 있다면 특별히 신경을 쓰지 않아도 되는데요,
그러나 Docker로 Oracle이 실행되는 경우, Docker도 독립된 시스템이므로 시간대가 맞지 않는 경우가 있습니다. (예로 Docker내 /etc/localtime이 연결되어 있지 않은 경우)
위 경우처럼 시간대가 맞지 않는 상황에서 Docker의 시스템 시간대를 변경하여 Oracle의 시간대를 맞추어 보도록 하겠습니다.
이 글은 아래 글과 연관되어 있습니다.
먼저 Oracle sqlplus에 접속하여 sysdate, systimestamp를 확인해 봅니다.
SQL SELECT SYSDATE, SYSTIMESTAMP FROM DUAL; 질의를 실행합니다.
$ sudo docker exec -it oracle sqlplus sys/oracle@//localhost:1521/ORCLCDB as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Tue May 10 06:34:52 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> SELECT SYSDATE, SYSTIMESTAMP FROM DUAL;
SYSDATE
---------
SYSTIMESTAMP
---------------------------------------------------------------------------
10-MAY-22
10-MAY-22 06.34.57.339091 AM +00:00
SQL>
위 실행 결과와 같이 +09:00이 아닌, +00:00등과 같다면 TimeZone이 맞지 않은 것입니다.
sqlplus를 quit;로 종료합니다.
SQL> quit;
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
$
실행중인 Docker Container에 bash로 들어갑니다.
$ sudo docker exec -u 0 -it oracle bash
시스템의 localtime을 아래의 명령어로 변경하고 bash에서 나갑니다.
# cd /etc
# rm -f localtime
# ln -s /usr/share/zoneinfo/Asia/Seoul localtime
# exit
Docker Container를 재시작합니다.
$ sudo docker restart oracle
Oracle sqlplus에 접속하여 시간대가 변경되었는지 확인해 봅니다.
$ sudo docker exec -it oracle sqlplus sys/oracle@//localhost:1521/ORCLCDB as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Tue May 10 15:54:26 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> SELECT SYSDATE, SYSTIMESTAMP FROM DUAL;
SYSDATE
---------
SYSTIMESTAMP
---------------------------------------------------------------------------
10-MAY-22
10-MAY-22 03.54.32.624932 PM +09:00
SQL>
시간대가 +09:00로 잘 변경되었습니다.
반응형
'SW개발 > Database' 카테고리의 다른 글
Oracle SQL Developer(오라클) 시간 표시(포맷) 변경 (0) | 2022.05.10 |
---|---|
MySQL/MariaDB 월별 건수 조회 SQL 쿼리 (0) | 2022.04.12 |
CentOS unixODBC MariaDB Connector 설치 (0) | 2021.11.23 |
CentOS unixODBC MySQL Connector 설치 (0) | 2021.11.22 |
Ubuntu(우분투) 및 CentOS MariaDB(마리아DB) 설치 (0) | 2021.11.18 |