Изменение часового пояса MySQL?

Как изменить свой часовой пояс, который в настоящее время находится в UTC по GMT +1, что является правильной линией, и я просто ввел его в выполнение phpMyAdmin SQL?

Мой хост просто дал мне эту ссылку http://dev.mysql.com/doc/refman/5.1/en/time-zone-support.html и ушел, поэтому я потерял спасибо

выполните команду:

SET time_zone = 'America/New_York'; 

(Или любой часовой пояс GMT + 1: http://www.php.net/manual/en/timezones.php )

Это команда установить часовой пояс MySQL для отдельного клиента, предполагая, что ваши клиенты распространяются по нескольким часовым поясам.

Эта команда должна выполняться перед каждой командой SQL с датами. Если ваши запросы проходят через class, то это легко реализовать.

Самый простой способ сделать это, как заметил Умар, – это, например,

 mysql> SET GLOBAL time_zone = 'America/New_York'; 

Использование названного часового пояса важно для часового пояса, который имеет корректировку экономии дневного света. Однако для некоторых compilationов Linux вы можете получить следующий ответ:

# 1298 – Неизвестный или неправильный часовой пояс

Если вы видите это, вам может потребоваться запустить перевод tzinfo_to_sql … это легко сделать, но не очевидно. Из командной строки linux введите:

 mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql -p 

Предоставьте свой пароль root (корень MySQL, а не корень Linux), и он загрузит любые определения в вашей zoneinfo в mysql. Затем вы можете вернуться и запустить свой

 mysql> SET GLOBAL time_zone = timezone; 

Хотя ответ Брайна полезен, я бы добавил, что его ссылка связана с именами часовых поясов PHP, которые не совпадают с именами часовых поясов MySQL.

Если вы хотите установить часовой пояс для отдельной сессии в GMT + 1 (UTC + 1, если быть точным), просто используйте в этой команде строку «+01: 00». То есть:

SET time_zone = '+01:00';

Чтобы узнать, в какой временной зоне используется ваш сеанс MySQL, просто выполните это:

SELECT @@global.time_zone, @@session.time_zone;

Это отличная ссылка на более подробную информацию: MySQL 5.5 Reference on Time Zones

Вот как синхронизировать PHP (> = 5.3) и временные интервалы MySQL за сеанс и пользовательские настройки. Поместите это, когда он будет работать, когда вам понадобятся установленные и синхронизированные часовые пояса.

 date_default_timezone_set($my_timezone); $n = new \DateTime(); $h = $n->getOffset()/3600; $i = 60*($h-floor($h)); $offset = sprintf('%+d:%02d', $h, $i); $this->db->query("SET time_zone='$offset'"); 

Где $ my_timezone является одним из списка временных зон PHP: http://www.php.net/manual/en/timezones.php

Часовой пояс PHP должен быть преобразован в смещение часов и минут для MySQL. Вот что делают строки 1-4.

Если у вас есть привилегия SUPER, вы можете установить значение глобального часового сервера во время выполнения с помощью этого оператора:

 mysql> SET GLOBAL time_zone = timezone; 

Если SET time_zone или SET GLOBAL time_zone не работают, вы можете изменить, как показано ниже:

  • Изменить систему часовых поясов, например: ubuntu … $ sudo dpkg-reconfigure tzdata

  • Перезагрузите сервер, или вы можете перезапустить apache2 и mysql (перезапуск /etc/init.d/mysql)

  • Как получить смещение часовой пояс в GMT (как GMT + 7: 00) с устройства Android?
  • Список идентификаторов Timezone для использования с FindTimeZoneById () в C #?
  • Как правильно установить JVM TimeZone
  • Как мне заполнить список часовых поясов IANA / Olson от Noda Time?
  • Как получить текущий часовой пояс MySQL?
  • Как хранить дату и время и временные метки в часовом поясе UTC с JPA и Hibernate
  • Как конвертировать datetime в timestamp с помощью C # /. NET (игнорируя текущий часовой пояс)
  • Сокращения временной зоны
  • Всегда ли полезно хранить время в UTC или это тот случай, когда лучше хранить в местное время?
  • Параметр DateTime с часовым поясом формы PST / CEST / UTC / etc.
  • Как установить часовой пояс по умолчанию в node.js?
  • Давайте будем гением компьютера.