PC-Start Problem JDBC Connection

J90

Aktives Mitglied
Hallo,

nachdem ich im offiziellen MySQL Forum keine Antwort erhalten habe, versuche ich mal hier mein Glück.
Aufgrund der Verwischtheit des Themengebiets poste ich meine Frage in dieser Untergruppe.

Ich nutze Java Applications (als JIT-exe), welche beim automatischen Start auf MySQL DB zugreifen. Mein Problem ist nun,
dass sich meine MySQL DB Connection nur in der Workbench durch Klick öffnen lässt; wird dieser Schritt nicht ausgeführt, kann mit JDBC keine Verbindung aufgebaut werden. Der Prozess 'mysqld.exe' startet normal nach dem Systemstart, nur das manuelle Öffnen in der Workbench ist noch notwendig (Wieso überhaupt? Irgendwas mit Admin-Rechten zu tun vll.?)

Ich meine dieses Problem zu haben, seitdem ich MySQL neuinstalliert habe, was kann ich tun? Wenn jemand eine Idee hat, wäre das sehr praktisch, da es wirklich sehr nervtötend im Alltag ist...

Beste Grüße,
 

LimDul

Top Contributor
Ich würde dich ja eher ans offizielle Mysql Forum verweisen - scheint eher ein Mysql Problem zu sein.

Was ist den die Fehlermeldung, die die Anwendung ausspuckt? Ansonsten mal im Mysql-Ordner nach Configs schauen (sollten hoffentlich textbasiert sein - mysqld.cfg/.conf) und schauen ob es da irgendwelche Optionen gibt.
 

mihe7

Top Contributor
Mein Problem ist nun,
dass sich meine MySQL DB Connection nur in der Workbench durch Klick öffnen lässt; wird dieser Schritt nicht ausgeführt, kann mit JDBC keine Verbindung aufgebaut werden.
lol, das hab ich auch noch nicht gehört.

Als kleine Ergänzung zur Antwort von @LimDul: Da Du von einer EXE sprichst, gehe ich mal von Windows aus. Schon mal die Einstellungen des Diensts überprüft? Vielleicht steht der auf manuell und das Workbench schiebt einfach den Dienst an (EDIT: ganz übersehen, dass Du schon geschrieben hast, dass mysqld startet... strange). In den Einstellungen solltest Du auch sehen können, wo die ini-Datei (my.ini) liegt. Standardmäßig dürfte die unter %PROGRAMDATA%\MySQL\MySQL Server <MySQL-Server-Version>\my.ini abgelegt sein, ausschlaggebend ist aber das, was in den Einstellungen des Diensts steht.

Ansonsten gilt: ganz wichtig wäre die Fehlermeldung der Anwendung, wie LimDul schon geschrieben hat. Auch ein Blick in die Logfiles (normalerweise im data-Verzeichnis) kann hilfreich sein.
 

J90

Aktives Mitglied
Um mein Problem nochmal genauer zu präzisieren: Wenn ich NetBeans verwende, habe ich das gleiche Problem mit dem Verbindungsaufbau mithilfe von JDBC. Wenn ich 'mysqld.exe' beende und neu starte, ergibt sich wieder das Standard Verbindungsproblem (in NetBeans)

Could not create connection to database server. Attempted reconnect 3 times. Giving up. (localhost,3306,root)

und taucht erst nicht mehr auf, wenn die DB manuell in der Workbench geöffnet wurde. Somit kann im Log im Grunde nichts drin stehen.

Was könnte in der 'my.ini' verändert werden? Anscheinend habe ich hier Pech gehabt und irgendetwas ist einfach verstellt (wie es mit der MySQL Installation ja mal schnell passieren kann...), hatte dieses Problem früher noch nicht.

Hat jemand eine Idee, was das Anklicken/Öffnen einer Connection in der Workbench für einen Prozess auslöst bzw. was der Effekt ist?
 

KonradN

Super-Moderator
Mitarbeiter
Erst einmal solltest Du uns die my.ini zeigen! Uns fehlen alle Details!

Was mir noch als Idee durch den Kopf geht: Hast Du evtl. mehrere mysql Installationen? Du startest dann eine Instanz, die dann ggf. nicht auf dem default Port hört und die Workbench startet dann eine weitere Instanz?

Was man prüfen kann:
Nach dem Rechnerstart - ohne Workbench - einfach einmal ausführen:
netstat -an | find "LISTENING"

Was für Ports werden da genannt?

Dann Workbench starten und ausführen. Hat sich dabei etwas geändert?
 

mihe7

Top Contributor
Somit kann im Log im Grunde nichts drin stehen.
Noch ein Nachtrag: das ist eine voreilige Schlussfolgerung. Natürlich kann im MySQL-Log etwas stehen und auch der ganze Stacktrace wäre interessant gewesen, denn "could not create connection to database server" kann ja verschiedene Ursachen haben; dazu sollten sich im Stacktrace Details finden lassen (zum Beispiel "Connection refused"). Es gibt eben viele Möglichkeiten, spontan fallen mri unterschiedliche Protokolle, unterschiedliceh Ports (oder die von Konrad genannten MySQL-Instanzen), nicht ganz kompatible Treiber (eher unwahrscheinlich), Firewall (unwahrscheinlich, aber auch nicht gänzlich auszuschließen) ein.
 

J90

Aktives Mitglied
Nach dem Rechnerstart - ohne Workbench - einfach einmal ausführen:
netstat -an | find "LISTENING"
Die Ports bleiben dieselben, genannt wird der Port 3306, welcher auch in der my.ini steht. Mit den mehreren Installationen wäre gut möglich, allerdings konnte ich keine weiteren mehr finden (wobei ich nicht in der registry gesucht habe). Ich habe eine weitere DB, welche im Netzwerk auf einem anderen PC installiert ist. Allerdings wird diese auch nur durch manuellen Klick verfügbar.

Noch ein Nachtrag: das ist eine voreilige Schlussfolgerung. Natürlich kann im MySQL-Log etwas stehen und auch der ganze Stacktrace wäre interessant gewesen, denn "could not create connection to database server" kann ja verschiedene Ursachen haben;
Ja, das war etwas schnell. Anbei der Stacktrace und die my.ini.
Wenn jemand eine Lösungsidee hat, wäre das klasse...

Anmerkung: Stacktrace war erst falsch beim Hochladen, weil Dienst nach Neustart plötzlich nicht mehr aktiv..
Fehler ist : com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed
 

Anhänge

  • Stacktrace_myini.zip
    6,2 KB · Aufrufe: 0
Zuletzt bearbeitet:

J90

Aktives Mitglied
Das Problem ist gelöst. Ich muss mich entschuldigen für meine morgendliche Ungründlichkeit und bedanken für die schnelle Hilfe; das Lesen des Stacktraces brachte den Fehler hervor (hatte in einer Exception kein .printStackTrace() stehen)
und konnte durch Anfügen in der URL mit '&allowPublicKeyRetrieval=true' beim Verbindungsaufbau mit MySQL.jar gelöst werden. Weiß leider nicht mehr genau, seitwann das Problem bestand (und ob ausversehen die URL irgendwann wegen einer anderen Einstellung verändert wurde). Habe zuerst hier gefragt, weil ich schon häufiger Probleme mit der my.ini File und der Installation hatte.

Wieso der allowPublicKeyRetrieval-Fehler nur vor dem Öffnen der Connection erfolgt, weiß vll. jemand hier im Forum mit mehr Ahnung..
 
Zuletzt bearbeitet:

KonradN

Super-Moderator
Mitarbeiter
Wieso der allowPublicKeyRetrieval-Fehler nur vor dem Öffnen der Connection erfolgt, weiß vll. jemand hier im Forum mit mehr Ahnung
Der public key wird vermutlich an einer Stelle gecached, so dass nach dem Verbindungsaufbau der Workbench auch der Java JDBC Treiber das schon vorliegen hat.

(und ob ausversehen die URL irgendwann wegen einer anderen Einstellung verändert wurde).
Ich vermute, dass Einstellungen zur Verschlüsselung verändert worden sind.
Server Konfiguration mit Erläuterungen finden sich unter: MySQL :: MySQL 8.0 Reference Manual :: 6 Security
Und die J/Connector Seite: MySQL :: MySQL Connector/J 8.1 Developer Guide :: 6.3.5 Security

Wenn die public/private Key Verschlüsselung Pflicht ist, dann muss der public key bekannt sein. Diesen kann man auf der Clientseite angeben (serverRSAPublicKeyFile) oder man kann ihn herunter laden. Dafür gibt es das von Dir gesetzte allowPublicKeyRetrieval und der Default Wert ist hier false.

Wenn Dich das alles im Detail interessiert, dann kannst Du das alles nachlesen und die Einstellungen bei Dir vergleichen (Und auch damit herum spielen). Was ich auf StackOverflow oft finde, ist das sslMode:Disabled, das ich aber nie empfehlen würde, da dann die Verbindung nicht mehr verschlüsselt wird. Für Testumgebungen mag es aber prinzipiell ok sein.
 

J90

Aktives Mitglied
ok danke für Info, Probleme gibt es hier immer wieder. Habe gerade mein useSSL aktiviert, welches vorhanden, aber nicht true war.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
megachucky Problem mit: SQL Exception Before start of result set Datenbankprogrammierung 2
zilti java.sql.SQLException: Before start of result set Datenbankprogrammierung 2
K java.sql.SQLException: Before start of result set Datenbankprogrammierung 2
C Problem mit Apache Poi Datenbankprogrammierung 6
N HSQLDB Problem mit Eclipselink in runnable Jar Datenbankprogrammierung 10
P GroupLayout-Problem Datenbankprogrammierung 12
F XAMPP max connections problem Datenbankprogrammierung 6
C MySQL Problem in phpMyAdmin Oberfläche Datenbankprogrammierung 5
C Problem with INSERT.............ON DUPLICATE KEY Datenbankprogrammierung 3
C Problem with insertion in database. Datenbankprogrammierung 7
F Problem mit Hibernate c3p0 Datenbankprogrammierung 2
W Problem mit Insert in zwei Tabellen Datenbankprogrammierung 8
G MySQL Problem mit MySQL verbindung Datenbankprogrammierung 8
A kleines Problem Datenbankprogrammierung 6
T Problem mit Datenbankverbindung Datenbankprogrammierung 22
V Derby/JavaDB updateRow Problem Datenbankprogrammierung 0
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
Nuiton EmbeddedDriver Problem Datenbankprogrammierung 6
A MongoDB Passwort Problem Datenbankprogrammierung 0
O HSQLDB Hibernate Criteria Problem Datenbankprogrammierung 3
F MySQL JDBC Problem Datenbankprogrammierung 5
Anfänger2011 Datenbankstruktur/aufbau (theoretisches Problem) Datenbankprogrammierung 5
M Derby/JavaDB Drop Database problem Datenbankprogrammierung 3
M Derby/JavaDB NOT LIKE problem Datenbankprogrammierung 19
N HSQLDB Problem mit EntityManager Datenbankprogrammierung 7
B MySQL JPAContainer Problem Datenbankprogrammierung 4
K Eclipse Apache Derby Treiber Problem Datenbankprogrammierung 4
C Problem oder Denkfehler mit H2-Database Datenbankprogrammierung 3
E Wie kann man das Problem mit der BLOB-Spalte lösen? Datenbankprogrammierung 1
M Problem mit jcouchdb und CouchDB - UTF8 kein gültiger Zeichentyp Datenbankprogrammierung 4
T MySQL Problem mit Datenbankanbindung Datenbankprogrammierung 4
M INSERT-Problem = integrity constraint violation: foreign key no parent Datenbankprogrammierung 5
P SQL Query Problem Datenbankprogrammierung 14
A MySQL Problem bei Tabelle ausgeben Datenbankprogrammierung 3
Q MySQL JDBC-Treiber Problem Datenbankprogrammierung 2
B SQLite Problem bei Planung der Datenbank [Jeopardy] Datenbankprogrammierung 3
A Problem mit dem Import und Export von Bildern Datenbankprogrammierung 4
P Oracle Problem mit Umlauten Datenbankprogrammierung 9
A Problem mit Create-Statement Datenbankprogrammierung 9
D Problem mit COLUMN_IDENTIFIERS Datenbankprogrammierung 8
Bluedaishi MySQL Abfrage Problem :-) Datenbankprogrammierung 21
M Problem mit mehreren Datasourcen Datenbankprogrammierung 3
R Resultset.last() Problem Datenbankprogrammierung 12
M Problem GroupBy Datenbankprogrammierung 3
S CURRENT_DATE problem Datenbankprogrammierung 2
M Problem mt JPA Id-Generators Datenbankprogrammierung 18
Gossi Oracle Problem mit group by... Datenbankprogrammierung 22
M MySQL SQL Abfrage Problem Datenbankprogrammierung 6
R MS-SQL Express Login-Problem Datenbankprogrammierung 8
P Lazy-Fetchig und Session-Problem mit Hibernate Datenbankprogrammierung 4
N HSQLDB Problem beim Treiberladen im Jar Datenbankprogrammierung 6
M Problem beim Erstellen einer Query Datenbankprogrammierung 7
C Hibernate ManyToMany zusammengesetzter Primärschlüssel, problem. Datenbankprogrammierung 3
M Problem mit HQL Syntax Datenbankprogrammierung 5
K Db4o Delete Problem Datenbankprogrammierung 11
Mike90 Deadlock/Lock Problem Datenbankprogrammierung 4
T Access 32bit on Win7 64Bit ODBC Problem Datenbankprogrammierung 1
C unverständliches DB Problem (Es ist kein temporärer Systemtabellenbereich mit einer ausreichenden..) Datenbankprogrammierung 5
S ODBC Treiber Problem/oder unvermögen Datenbankprogrammierung 18
J Problem bei Boolean in PreparedStatement Datenbankprogrammierung 5
C MySQL Problem mit UPDATE Abfrage Datenbankprogrammierung 13
C Problem mit SQL-Abfrage Datenbankprogrammierung 5
K Problem mit Datenbankverbindung via Eclipse Datenbankprogrammierung 2
A Problem mit Eintragen von Daten in eine Datenbank mittels DAO Datenbankprogrammierung 4
S Oracle Problem mit PreparedStatement.setString(1,"str") Datenbankprogrammierung 10
B MySQL Problem mit Datenbankanbindung an MySQL Datenbankprogrammierung 2
N Problem bei Erstellung eines Index Datenbankprogrammierung 12
C Hibernate Property-Problem Datenbankprogrammierung 5
J MyBatis - Update Problem Datenbankprogrammierung 4
S JPA: Problem mit Update von Daten Datenbankprogrammierung 7
c_sidi90 Hibernate Problem Table doesnt excist Datenbankprogrammierung 8
M Problem mit JPA - OneToMany-Relation Datenbankprogrammierung 3
I Hibernate: Composite Foreign Key Problem Datenbankprogrammierung 14
S JPA OptimisticLocking Problem Datenbankprogrammierung 11
I Derby/JavaDB Problem mit Befüllung von Tabelle Datenbankprogrammierung 7
JavaKaffee Derby/JavaDB Quartz-WebAnwendung - Connection/Treiber Problem Datenbankprogrammierung 47
I Problem mit ResultSet Datenbankprogrammierung 2
L Excel in MySQL importieren Problem Datenbankprogrammierung 5
S Problem beim Anlegen einer Tabelle Datenbankprogrammierung 5
R MS Access mit Java Problem mit Update Statment Datenbankprogrammierung 13
S MySQL Problem mit SELECT bzw encoding Datenbankprogrammierung 4
T Problem beim schreiben von daten Datenbankprogrammierung 4
M MySQL getConnection - Verbindung Problem Datenbankprogrammierung 2
K Hibernate + MySQL Problem... Datenbankprogrammierung 2
I MySQL MySQL – Proxy Problem Datenbankprogrammierung 4
M Problem mit Hibernate und Named Query Datenbankprogrammierung 1
M Problem mit Hibernate und Access Datenbankprogrammierung 9
C firebird problem Datenbankprogrammierung 5
F Problem mit Datenbankabfrage Datenbankprogrammierung 7
K SQL Problem mit Date Datenbankprogrammierung 3
jeppi MySQL Design-Problem: DB-Verbindung herstellen und halten - JdbcRowSet / Idle-Timeout? Datenbankprogrammierung 9
J sql abfrage ... Problem mit Datumswert Datenbankprogrammierung 3
G MySQL Connection Problem Datenbankprogrammierung 3
O MySQL Problem mit Umlauten?! Datenbankprogrammierung 2
E Hibernate Problem bei bidirektionaler 1:n Verbindung Datenbankprogrammierung 2
D MySQL Problem beim einfügen von Double-Zahlen Datenbankprogrammierung 4
M Oracle Problem mit Resultset Datenbankprogrammierung 11
T Problem bei Zugriff auf Access Datenbank Datenbankprogrammierung 7
W jpmdbc Problem -Beispiel funktioniert nicht Datenbankprogrammierung 9
W Verständnis-Problem JPA Grundlagen Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben