Lösung für MySQLSyntaxErrorException beim Herstellen einer Verbindung zu MySQL über Bitronix

Lösung für MySQLSyntaxErrorException beim Herstellen einer Verbindung zu MySQL über Bitronix

Lösung für MySQLSyntaxErrorException beim Herstellen einer Verbindung zu MySQL über Bitronix

1. Entwicklungsumgebung

Ruhezustand-Version: 5.1.0.Final
Bitronix BTM-Version: 2.1.3

2 Informationen zum Ausnahmestapel

Verursacht durch: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Dem Benutzer ''@'localhost' wurde der Zugriff auf die Datenbank 'hibernate' verweigert.
  bei sun.reflect.NativeConstructorAccessorImpl.newInstance0 (native Methode)
  bei sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
  bei sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
  bei java.lang.reflect.Constructor.newInstance(Constructor.java:423)
  bei com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
  bei com.mysql.jdbc.Util.getInstance(Util.java:360)
  bei com.mysql.jdbc.SQLError.createSQLException(SQLError.java:978)
  bei com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887)
  bei com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823)
  bei com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870)
  bei com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659)
  bei com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1206)
  bei com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2234)
  bei com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2265)
  bei com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2064)
  bei com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:790)
  bei com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
  bei sun.reflect.NativeConstructorAccessorImpl.newInstance0 (native Methode)
  bei sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
  bei sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
  bei java.lang.reflect.Constructor.newInstance(Constructor.java:423)
  bei com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
  bei com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:395)
  bei com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
  bei bitronix.tm.resource.jdbc.lrc.LrcXADataSource.getXAConnection(LrcXADataSource.java:104)
  ... 33 mehr

3 Analysieren Sie das Problem

Offensichtlich wird der Zugriff verweigert, da keine Berechtigung zum Zugriff auf die MySQL-Datenbank vorliegt.

Als ich den Code öffnete, stellte ich fest, dass es stimmte. Der Code lieferte weder ein Konto noch ein Passwort für den Zugriff auf die Datenbank.

ds.setClassName("bitronix.tm.resource.jdbc.lrc.LrcXADataSource");
          ds.getDriverProperties().put(
              "URL",
              Verbindungs-URL != null ? Verbindungs-URL
                  : "jdbc:mysql://localhost:3306/hibernate?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull"
          );
          Eigenschaften dp = ds.getDriverProperties();
          dp.put("TreiberKlassenname", "com.mysql.jdbc.Treiber");
          ds.setDriverProperties(dp);

4. Problemlösung

Fügen Sie es schnell hinzu, das Problem ist gelöst O(∩_∩)O~

...
dp.put("Benutzer","root");
dp.put("Passwort","");
...
ds.setDriverProperties(dp);

Vielen Dank fürs Lesen, ich hoffe, es kann Ihnen helfen, danke für Ihre Unterstützung dieser Site!

Das könnte Sie auch interessieren:
  • So gehen Sie mit dem Fehler beim Einfügen seltener Zeichen in MySQL um (falscher Zeichenfolgenwert)
  • Lösen Sie das Problem, dass dem Benutzer ''root''@''%'' der Zugriff auf die Datenbank ''xxx'' verweigert wurde, nachdem eine Datenbank in MySQL erstellt wurde
  • Lösung für FEHLER 1366 bei der Eingabe von Chinesisch in MySQL
  • Vergleich der Sprachunterschiede zwischen MySQL und Oracle SQL
  • Beispiele für die Verwendung der oder-Anweisung in MySQL

<<:  Ein vollständiges Tutorial zur Verwendung der Axios-Kapselung in Vue

>>:  So deaktivieren Sie Anzeigen in der Terminal-Willkommensnachricht in Ubuntu Server

Artikel empfehlen

So setzen Sie Ihr Linux-Passwort zurück, wenn Sie es verloren haben

1. Das Startmenü besteht darin, den Cursor in die...

Mit CSS3 erstellter Hover-Zoom-Effekt

Ergebnis:Implementierungscode: html <link href...

js, um die Produktionsmethode des Karussells zu realisieren

In diesem Artikel wird der spezifische Code für j...

Wird der veraltete Docker durch Podman ersetzt?

Das Kubernetes-Team hat vor Kurzem angekündigt, d...

Zugriffsvorgang im MySQL-Befehlszeilenmodus MySQL-Datenbankvorgang

Nutzungsumgebung Geben Sie im cmd-Modus mysql --v...

MySQL 5.5.56 - Installationsfreie Versionskonfigurationsmethode

Die Konfigurationsmethode der kostenlosen Install...

Verschiedene Möglichkeiten zum Ändern der Hintergrundbildfarbe mit CSS3

CSS3 kann die Farbe von Bildern ändern. Ab sofort...

Tutorial zu XHTML-Webseiten

<br />Dieser Artikel soll Anfängern hauptsäc...

MySQL führt Befehle für externe SQL-Skriptdateien aus

Inhaltsverzeichnis 1. Erstellen Sie eine SQL-Skri...

MySQL verwendet Ereignisse, um geplante Aufgaben abzuschließen

Ereignisse können die Ausführung von SQL-Code ein...

Methodenbeispiel zum sicheren Abrufen tiefer Objekte von Object in Js

Inhaltsverzeichnis Vorwort Text Parameter Beispie...

Zusammenfassung zur Positionierung in CSS

Es gibt vier Arten der Positionierung in CSS, die...