Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / сдвинулось sysdate / 10 сообщений из 10, страница 1 из 1
06.09.2016, 10:49:50
    #39304272
Non-Grata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Всем доброго дня! Проблема странная. Утром заметил, что сдвинулось системное время базы данных.
Oracle 11.2.0.1.0 на Oracle Linux Server 6.5.
Причём сам Linux Server отображает правильное время.

Код: plsql
1.
2.
3.
4.
5.
SQL> select SYSTIMESTAMP from dual;

SYSTIMESTAMP
---------------------------------------------------------------------------
06.09.16 04:06:53,364749 -03:00


А если сделать так, то показывает всё правильно:

Код: plsql
1.
2.
3.
4.
5.
SQL> select CURRENT_TIMESTAMP from dual;

CURRENT_TIMESTAMP
---------------------------------------------------------------------------
06.09.16 10:05:54,677881 +03:00


Это после того, как я вручную указал для базы

Код: plsql
1.
ALTER DATABASE SET TIME_ZONE='+03:00';



И перезапустил её.
Можно как-нибудь вернуть обратно правильный sysdate? Он во многих таблицах фигурирует типа "default sysdate".
Заранее спасибо.
...
Рейтинг: 0 / 0
06.09.2016, 11:47:58
    #39304323
Viewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Где выполнялись запросы - непосредственно на сервере или на клиентской машине?
...
Рейтинг: 0 / 0
06.09.2016, 12:01:15
    #39304336
Viewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
...
Рейтинг: 0 / 0
06.09.2016, 12:06:27
    #39304342
Viewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Non-GrataМожно как-нибудь вернуть обратно правильный sysdate ? Он во многих таблицах фигурирует типа "default sysdate".
... a что с sysdate ?
...
Рейтинг: 0 / 0
06.09.2016, 12:16:43
    #39304353
Non-Grata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Запросы выполняю с клиентской машины.
На сервере было установлено правильное системное время, time zone стояла +3.
Перевёл время на сервере на 6 часов вперёд, стало:
Код: plsql
1.
2.
3.
4.
5.
SQL> select to_char(sysdate,'DD.MM.YYYY HH24:MI:SS') from dual;

TO_CHAR(SYSDATE,'DD
-------------------
06.09.2016 12:12:31


Это правильно. Зато LOCALTIMESTAMP теперь спешит на 6 часов:
Код: plsql
1.
2.
3.
4.
5.
SQL> select LOCALTIMESTAMP from dual;

LOCALTIMESTAMP
---------------------------------------------------------------------------
06.09.16 18:13:17,990613



Системное время на сервере установлено сейчас как 18:13 cо смещением +03:00 UTC
...
Рейтинг: 0 / 0
06.09.2016, 12:18:03
    #39304354
Non-Grata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Поэтому вопрос: как сделать, чтоб sysdate возвращал системное время сервера?
...
Рейтинг: 0 / 0
06.09.2016, 12:46:13
    #39304381
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Non-GrataНа сервере было установлено правильное системное время, time zone стояла +3.
Перевёл время на сервере на 6 часов вперёд...
Системное время на сервере установлено сейчас как 18:13 cо смещением +03:00 UTCА теперь подробнее командочку date на линуксе
И подом в этом же сеансе перезапусти БД и листенер

SYSDATE кажет то время, что возвращает ему OS, отбрасывая любую информацию от таймзоне (в том сеансе откуда запущен экземпляр БД/листенер)
SYSTIMESTAMP возьмет и информацию о таймзоне сервера

А вот LOCALTIMESTAMP возмет таймзону клиента и приведет время к ней
...
Рейтинг: 0 / 0
06.09.2016, 14:25:30
    #39304438
Non-Grata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Сделал на сервере:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
[oracle@srv20 ~]$ date
Tue Sep  6 20:11:11 FET 2016
[oracle@srv20 ~]$ lsnrctl reload

The command completed successfully
[oracle@srv20 ~]$ sqlplus sys/pwd as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Tue Sep 6 20:12:17 2016


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select to_char(sysdate,'dd.mm.yyyy hh24:mi:ss') from dual;

TO_CHAR(SYSDATE,'DD
-------------------
06.09.2016 20:12:41

SQL> select systimestamp from dual;

SYSTIMESTAMP
---------------------------------------------------------------------------
06-SEP-16 08.13.08,484810 PM +03:00

SQL> select localtimestamp from dual;

LOCALTIMESTAMP
---------------------------------------------------------------------------
06-SEP-16 08.14.04,636894 PM



Базу перегрузить не мог. Но если с любого клиента запросить:
Код: plsql
1.
2.
3.
4.
5.
SQL> select to_char(sysdate,'DD.MM.YYYY HH24:MI:SS') from dual;

TO_CHAR(SYSDATE,'DD
-------------------
06.09.2016 14:14:30



Почему?
...
Рейтинг: 0 / 0
06.09.2016, 14:38:29
    #39304452
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Non-GrataСделал на сервере:
Код: powershell
1.
[oracle@srv20 ~]$ lsnrctl reload



Базу перегрузить не мог. Но если с любого клиента запросить:
Код: plsql
1.
2.
3.
4.
5.
SQL> select to_char(sysdate,'DD.MM.YYYY HH24:MI:SS') from dual;

TO_CHAR(SYSDATE,'DD
-------------------
06.09.2016 14:14:30



Почему?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
-bash-4.1$ ps -ef|grep tns
root        15     2  0 Jul28 ?        00:00:00 [netns]
oracle     1897      1  0 Jul28 ?        00:27:26 /opt/oracle/product/11gr2/bin/tnslsnr LISTENER -inherit
-bash-4.1$ lsnrctl reload

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 06-SEP-2016 21:35:10

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=morpheus)(PORT=1521)))
The command completed successfully
-bash-4.1$ ps -ef|grep tns
root        15     2  0 Jul28 ?        00:00:00 [netns]
oracle     1897      1  0 Jul28 ?        00:27:26 /opt/oracle/product/11gr2/bin/tnslsnr LISTENER -inherit
oracle    6942  6890  0 21:35 pts/0    00:00:00 grep tns
stop/start наше все
...
Рейтинг: 0 / 0
06.09.2016, 14:56:55
    #39304473
Non-Grata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
сдвинулось sysdate
Т.е. возвращаю на сервере актуальную дату, перезапускаю БД, листенер и будет мне счастье?
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / сдвинулось sysdate / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]