MYSQL СЕЙЧАС () отстает на 30 секунд - PullRequest
2 голосов
/ 13 июля 2010

Когда я делаю запрос для NOW (), mysql возвращает время, которое выключено примерно на -30 секунд от текущего времени на сервере.Есть идеи?Я попытался просмотреть файл конфигурации и ничего не нашел.Я использую версию 5.1.37

SELECT NOW()

Ответы [ 2 ]

5 голосов
/ 13 июля 2010

Контексты часового пояса сервера и контекст, в котором вы получаете дату, почти наверняка имеют другое представление о наличии дополнительных секунд. Я подозреваю, что разница будет 24, а не 30.

Вы можете проверить это, отрегулировав часовой пояс, когда получите дату. В различных Unix-системах вы можете использовать префикс «right /» в часовом поясе, чтобы настроить на високосные секунды и посмотреть, как это меняет дело.

Чтобы исправить это, необходимо убедиться, что сервер работает с правильно установленной переменной среды часового пояса.

Обновление:

Пропустил тег "windows". Время Windows определяется как UTC, а не TAI, и поэтому включает в себя дополнительные секунды. Если разница действительно 24 с, то вам нужно убедиться, что mysql не применяет настройки високосной секунды, как Windows.

2 голосов
/ 13 июля 2010

Вы уверены, что для запуска сценария и проверки времени на сервере не требуется 30 секунд?

NOW () возвращает постоянное время, которое указывает время, в которое Оператор начал исполняться.

Вы должны основывать сравнение на инициализации, а не на завершении запроса.

Если вам нужно время при звонке, используйте SYSDATE().

Если все это в порядке и у вас все еще есть проблема, вы определенно просто используете SELECT NOW()? Если у вас есть дополнение к полю в вашем запросе, оно может быть добавлено к столбцу NOW() вместо того, который вы считаете.

Если все это все еще проверяется, я думаю, что это может быть полезно, чтобы просмотреть статью Поддержка часового пояса сервера MySQL. Может быть, игнорируются високосные секунды или что-то в этом роде ...

Вы перезапустили сервер MySQL на тот случай, если время сервера было скорректировано с момента запуска сервера?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...