Перейти к основному содержимому
Версия: 2.0.x

Настройка часового пояса

В этой теме описывается, как настроить часовой пояс и как настройки часового пояса влияют на работу системы.

Настройка часового пояса на уровне сессии или глобального часового пояса​

Вы можете настроить часовой пояс на уровне сессии или глобальный часовой пояс для вашего cluster Selena с помощью параметра time_zone.

  • Для настройки часового пояса на уровне сессии выполните команду SET time_zone = 'xxx';. Вы можете настроить разные часовые пояса для разных сессий. Настройка часового пояса становится недействительной при отключении от FE.
  • Для настройки глобального часового пояса выполните команду SET global time_zone = 'xxx';. Настройка часового пояса сохраняется в FE и остаётся действительной даже после отключения от FE.

Примечание

Перед загрузкой данных в Selena измените глобальный часовой пояс вашего cluster Selena на то же значение, что и параметр system_time_zone. В противном случае после загрузки данных данные типа DATE будут некорректными. Параметр system_time_zone относится к часовому поясу машин, на которых размещены FE. При запуске машин часовой пояс машин записывается как значение этого параметра. Вы не можете вручную настроить этот параметр.

Формат часового пояса​

Значение параметра time_zone не чувствительно к регистру. Значение параметра может быть в одном из следующих форматов.

ФорматПример
Смещение UTCSET time_zone = '+10:00'; SET global time_zone = '-6:00';
Название часового поясаSET time_zone = 'Asia/Shanghai'; SET global time_zone = 'America/Los_Angeles';

Для получения дополнительной информации о формате часового пояса см. Список часовых поясов базы данных tz.

Примечание

Сокращения часовых поясов не поддерживаются, за исключением CST. Если вы установите значение time_zone в CST, Selena преобразует CST в Asia/Shanghai.

Часовой пояс по умолчанию​

Значение по умолчанию параметра time_zone - Asia/Shanghai.

Просмотр настроек часового пояса​

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

 SHOW VARIABLES LIKE '%time_zone%';

Влияние настроек часового пояса​

  • Настройки часового пояса влияют на значения времени, возвращаемые операторами SHOW LOAD и SHOW BACKENDS. Однако настройки не влияют на значение, указанное в предложении LESS THAN, когда столбцы партиционирования, указанные в операторе CREATE TABLE, имеют тип DATE или DATETIME. Настройки также не влияют на данные типов DATE и DATETIME.
  • Настройки часового пояса влияют на отображение и хранение следующих функций:
    • from_unixtime: возвращает дату и время вашего указанного часового пояса на основе указанной временной метки UTC. Например, если глобальный часовой пояс вашего cluster Selena - Asia/Shanghai, select FROM_UNIXTIME(0); вернёт 1970-01-01 08:00:00.
    • unix_timestamp: возвращает временную метку UTC на основе даты и времени вашего указанного часового пояса. Например, если глобальный часовой пояс вашего cluster Selena - Asia/Shanghai, select UNIX_TIMESTAMP('1970-01-01 08:00:00'); вернёт 0.
    • curtime: возвращает текущее время вашего указанного часового пояса. Например, если текущее время указанного часового пояса - 16:34:05, select CURTIME(); вернёт 16:34:05.
    • now: возвращает текущую дату и время вашего указанного часового пояса. Например, если текущая дата и время указанного часового пояса - 2021-02-11 16:34:13, select NOW(); вернёт 2021-02-11 16:34:13.
    • convert_tz: преобразует дату и время из одного часового пояса в другой. Например, select CONVERT_TZ('2021-08-01 11:11:11', 'Asia/Shanghai', 'America/Los_Angeles'); вернёт 2021-07-31 20:11:11.