So vermeiden Sie die URL-Zeitzonenfalle in MySQL

So vermeiden Sie die URL-Zeitzonenfalle in MySQL

Vorwort

Wenn Sie MySQL 6.0.x oder höher (JAR) verwenden, müssen Sie neuerdings die ServerTimezone im URL-Link des Codes angeben. Es tritt eine Ausnahme auf:

1. ServerTimezone nicht angegeben

Konfigurieren der URL in XML

<Eigenschaftsname="URL" Wert="jdbc:mysql://localhost:3306/mybatisstudy"/>

Anomalien

Verursacht durch: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: Der Server-Zeitzonenwert „�й���׼ʱ��“ wird nicht erkannt oder stellt mehr als eine Zeitzone dar. Sie müssen entweder den Server oder den JDBC-Treiber (über die Konfigurationseigenschaft „serverTimezone“) so konfigurieren, dass ein spezifischerer Zeitzonenwert verwendet wird, wenn Sie die Zeitzonenunterstützung nutzen möchten.

Sie müssen den Server oder JDBC-Treiber (über die Konfigurationseigenschaft „serverTimezone“) so konfigurieren, dass ein detaillierterer Zeitzonenwert verwendet wird, wenn Sie die Zeitzonenunterstützung nutzen möchten.

2. Online-Lösungen

Fügen Sie den Parameter ?serverTimezone=utc nach der URL hinzu

<Eigenschaftsname="URL" Wert="jdbc:mysql://localhost:3306/springdatastudy?serverTimezone=UTC"/>

2.1. Aufgetretene Probleme

Obwohl beim Hinzufügen des Zeitzonenprogramms oben kein Fehler auftritt, gibt es ein Problem, wenn wir die Zeit mithilfe von Java-Code in die Datenbank einfügen.

Beispielsweise lautet die in den Java-Code eingefügte Zeit: 2017-08-21 17:29:56

Die in der Datenbank angezeigte Zeit lautet jedoch: 2017-08-21 09:29:56

3. Grundursache

Wegen des Problems mit der Zeitzoneneinstellung.

UTC steht für Universal Coordinated Time (koordinierte Weltzeit), die von uns verwendete Zeit ist jedoch die Zeitzone von Peking, also Ost-8 Uhr, also acht Stunden vor UTC.

UTC + (+0800) = Ortszeit (Peking)

4. Lösung

Die Zeitzone der URL verwendet die chinesische Standardzeit. Das heißt, serverTimezone=Asia/Shanghai

4.1 Verwenden Sie Java-Code, um die lokale Zeitzonen-ID abzurufen

Kalender cal = Kalender.getInstance();
ZeitZone ZeitZone = cal.getTimeZone();
System.out.println(timeZone.getID());
System.out.println(timeZone.getDisplayName());
Asien/Shanghai
Chinesische Standardzeit

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels Ihnen bei Ihrem Studium oder Ihrer Arbeit helfen kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Änderung des Zeitzonenproblems von MySQL-Containern in Docker
  • Detaillierte Erklärung des MySQL-Zeitzonenproblems in Java
  • So zeigen Sie die Zeitzone in MySQL an und ändern sie
  • Detaillierte Erklärung der MySQL-Zeitstempeltypen und Zeitzonenbeispiele
  • Zusammenfassung der Methoden zum Ändern der MySQL-Zeitzone
  • So unterscheiden Sie Groß- und Kleinbuchstaben in Zeichenfolgen bei MySQL-Abfragen
  • MySQL-Zeitzonenproblem
  • Eine kurze Zusammenfassung der Zeitzonen von PHP und MySQL
  • mysql löst zeitzonenbezogene Probleme

<<:  So verwenden Sie CocosCreator zum Erstellen eines Schießspiels

>>:  React erhält den Eingabewert und übermittelt 2 Methodenbeispiele

Artikel empfehlen

Einführung in die Verwendung des Base-Link-Tags Base

<br />Wenn Sie auf den Link klicken, wird di...

jQuery implementiert Formularvalidierungsfunktion

Beispiel für die Validierung eines jQuery-Formula...

13 JavaScript-Einzeiler, die Sie wie einen Experten aussehen lassen

Inhaltsverzeichnis 1. Holen Sie sich einen zufäll...

WeChat Mini-Programme werden global über die Uni-App geteilt

Bei der tatsächlichen Verwendung ist es häufig er...

Lösung für MySQL-Fehlercode 1862 Ihr Passwort ist abgelaufen

Der Blogger hat MySQL ein oder zwei Monate lang n...

HTML-Tipps, um Ihren Code semantisch zu gestalten

HTML-Semantik scheint ein alltägliches Problem zu...

Nginx löst Cross-Domain-Probleme und bindet Seiten von Drittanbietern ein

Inhaltsverzeichnis Vorwort Schwierigkeit Domänenü...

Detaillierte Schritte zur Installation und Konfiguration von MySQL 5.7

1. MySQL herunterladen 1. Melden Sie sich auf der...

Anwendung und Implementierung des Datencache-Mechanismus für kleine Programme

Informationen zum Miniprogramm-Datencache Datenca...

Eine detaillierte Erklärung, wie React Fiber funktioniert

Inhaltsverzeichnis Was ist React Fiber? Warum Rea...