Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Местное время в sql

pvam Просветленный (23903), на голосовании 1 год назад
Есть ли способ настройки sql на вебсерве CentOS на местное время. Сервер находится в Европе, где сегодня перевели время, а в России часы не переводят. В итоге пострадали временные метки при создании их в непосредственно в бд. Сервер управляется cpanel.
Голосование за лучший ответ
Дмитрий Каллистов Профи (876) 2 года назад
sql берёт время из оси, ось берёт время из инета в зависимости от место положения определяемого по адресу.
Отключить синхронизацию времени через инет, в оси выставить время какое хочется

sql-то хоть какой?
Дмитрий КаллистовПрофи (876) 2 года назад
TIMESTAMP WITH TIME ZONE '2004-10-19 10:23:54+02'
В константе типа timestamp without time zone PostgreSQL просто игнорирует часовой пояс. То есть результирующее значение вычисляется только из полей даты/времени и не подстраивается под указанный часовой пояс.
Когда значение timestamp with time zone выводится, оно всегда преобразуется из UTC в текущий часовой пояс timezone и отображается как локальное время. Чтобы получить время для другого часового пояса, нужно либо изменить timezone, либо воспользоваться конструкцией AT TIME ZONE (см. Подраздел 9.9.3).
https://postgrespro.ru/docs/postgresql/9.6
Раздел 8.5
(8.5.1.3. Даты и время)
Дмитрий КаллистовПрофи (876) 2 года назад
my.cnf
Чтобы установить часовой пояс, добавьте в секцию [mysqld] следующую строку:
default-time-zone='+02:00'
Чтобы применить конфигурацию, перезапустите MySQL.

можете задать часовой пояс непосредственно для сайта. Для этого достаточно использовать PHP-функцию date_default_timezone_set.
<?php
date_default_timezone_set("Asia/Bangkok");
echo date_default_timezone_get();
?>
pvamПросветленный (23903) 2 года назад
Спасибо за наводку.
Искал, что в переменных sql хостер не дает установить ни time zone, ни system time zone. там стоит EEST.
Проблему решил только сопоставлением соединения с БД как
SET SESSION time_zone = "+3:00";
даже все значения выровнялись и сдвига во времени при отображении данных как небывало.
Похожие вопросы