Heim >Datenbank >MySQL-Tutorial >Warum schlägt meine JDBC-Verbindung mit „Server-Zeitzonenwert „AEST' ist nicht erkannt' fehl?
Der Serverzeitzonenwert „AEST“ wird nicht erkannt oder stellt mehr als eine Zeitzone dar
Dieser Fehler tritt auf, wenn die Serverzeitzone ( In diesem Fall wird AEST nicht erkannt oder repräsentiert mehrere Zeitzonen. Um dieses Problem zu beheben, müssen Sie den Server oder JDBC-Treiber (insbesondere die Konfigurationseigenschaft serverTimezone) so konfigurieren, dass er einen spezifischeren Zeitzonenwert verwendet.
MySQL-Besonderheiten
Für MySQL ist die Standard-Server-Zeitzone UTC. Wenn Sie jedoch eine Datenbank mit einer bestimmten Zeitzone erstellen, speichert MySQL Tabellen mit Zeitstempeln in einem UTC-basierten Format.
Beim Herstellen einer Verbindung zur Datenbank versucht der JDBC-Treiber, diese zu konvertieren Zeitstempel an die Zeitzone Ihrer JVM anpassen. Wenn sich die Zeitzone Ihrer JVM von der Zeitzone der Datenbank unterscheidet und Sie serverTimezone nicht angegeben haben, konvertiert der Treiber die Zeitstempel möglicherweise nicht richtig, was zu diesem Fehler führt.
Lösung
Um dieses Problem in MySQL zu beheben, geben Sie die serverTimezone-Eigenschaft in Ihrer Verbindungs-URL oder in Ihrem Ruhezustand an Konfiguration:
Verbindungs-URL:
jdbc:mysql://localhost:3306/database_name?serverTimezone=your_timezone
Ruhezustandskonfiguration:
<property name="hibernate.connection.server_timezone">your_timezone</property>
Wobei your_timezone die spezifische Zeitzone darstellt, die Sie möchten zu verwenden.
Zusätzliche Tipps
Das obige ist der detaillierte Inhalt vonWarum schlägt meine JDBC-Verbindung mit „Server-Zeitzonenwert „AEST' ist nicht erkannt' fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!