Heim >Datenbank >MySQL-Tutorial >Wie konfiguriere ich Zeitzonen in MySQL effektiv?

Wie konfiguriere ich Zeitzonen in MySQL effektiv?

Barbara Streisand
Barbara StreisandOriginal
2024-12-14 19:20:14984Durchsuche

How Do I Effectively Configure Time Zones in MySQL?

So konfigurieren Sie die Zeitzone in MySQL: Ausführliche Anleitung

MySQL bietet Flexibilität bei der Verwaltung von Zeitzonen durch verschiedene Methoden. Hier ist eine umfassende Anleitung, die Sie bei der effektiven Einstellung der Zeitzone unterstützt.

Standardzeitzone in der Datei „my.cnf“

In der MySQL-Konfigurationsdatei („my.cnf "), kann die Standardzeitzone im Abschnitt [mysqld] mit der folgenden Direktive angegeben werden:

default-time-zone='+00:00'

Diese Zeile setzt die Standardzeitzone auf UTC (Koordinierte Weltzeit).

Globale Zeitzonenvariable

Die Variable @@global.time_zone speichert die globale Zeitzoneneinstellung. So überprüfen Sie den aktuellen Wert:

SELECT @@global.time_zone;

So legen Sie die globale Zeitzone fest:

SET GLOBAL time_zone = '+8:00';
SET GLOBAL time_zone = 'Europe/Helsinki';

Variable der Sitzungszeitzone

Das @@ Die Variable session.time_zone steuert die Zeitzone für die aktuelle Verbindung. So zeigen Sie den Wert an:

SELECT @@session.time_zone;

So legen Sie die Sitzungszeitzone fest:

SET time_zone = 'Europe/Helsinki';
SET time_zone = "+00:00";

Sowohl @@session.time_zone als auch @@global.time_zone können SYSTEM zurückgeben, was die Uhrzeit angibt Zone wird von my.cnf geerbt.

Zusätzlich Hinweise

Um benannte Zeitzonen (z. B. „Europa/Helsinki“) zu aktivieren, müssen die MySQL-Zeitzonentabellen ordnungsgemäß gefüllt sein.

Die Funktion TIMEDIFF() kann zum Abrufen verwendet werden der aktuelle Zeitzonenoffset.

UNIX_TIMESTAMP() und UNIX_TIMESTAMP(NOW()) stellen das aktuelle UNIX bereit Zeitstempel.

Um Zeitstempel in UNIX-Zeitstempel zu konvertieren, verwenden Sie SELECT UNIX_TIMESTAMP(timestamp) FROM table_name.

Um eine UTC-Datums-/Uhrzeitspalte als UNIX-Zeitstempel abzurufen: SELECT UNIX_TIMESTAMP(CONVERT_TZ(utc_datetime, ' 00 :00', @@session.time_zone)) FROM Tabellenname.

Das Ändern der Zeitzone ändert nicht die gespeicherten Datums- oder Zeitstempelwerte, sondern wirkt sich auf deren Anzeige aus, da sie intern als UTC-Zeitstempel gespeichert werden.

Das obige ist der detaillierte Inhalt vonWie konfiguriere ich Zeitzonen in MySQL effektiv?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn