ich benutze seit geraumer Zeit einen ESP8266 um eine SQL Datenbank mit Sensordaten zu füttern. Seit heute bekomme ich diese Meldung und er meldet sich nciht mehr an der Datenbank an.
Ich weis leider überhaupt nicht was der Künstler mir damit sagen will.
Ich weis das ich schonmal irgendwelche Probleme hatte Auf die Datenbank zuzugreifen, das war aber glaub ich mit dem Laptop... und da musste ich irgend etwas auf native password umstellen.... aber das ist Monate her und den Fehler bekomme ich erst seit heute... hatte das vllt. schon mal jemand?
EDIT: Ich habe gerade nochmal versucht mich mit dem Sensor Profil über mysql anzumelden auf dem laptop, das ging, also am Profil kann eigentlich nicht liegen.
So ein Unsinn lässt fast immer auf fehlerhafte Datenübertragung schließen.
Er empfängt irgendwelche Bits und verliert einige. Das Ergebnis ist dann meist sowas wie du angezeigt hast.
Ich würde als erster mal nach Störquellen suchen.
Ich hatte so ein Unsinn mal mit der Telekom. Angeblich habe ich mein Zugangspasswort (seit Jahren fest im Router) falsch eingeben. Nachdem ich mit viel Glück ein Kompotenten Fachmann am Telefon hatte, hat sich herausgestellt das mit ein Telekomtechniker was gutes tun wollte. Er hat mein 1500er Leitung auf 2000 gesetzt. Und prompt kam nur Mist am Server an. Wieder Zurück auf alte Werte und schon war die Sache erl.
Hm... also am Netzwerk kann es eig nicht liegen, da die Verbindung korrekt aufgebaut wird und die SQL Datenbank auch von anderen geraten (Laptop) erreicht wird. Datenbank, Sensor und Laptop sind direkt in einem WLAN netz das ich mit einem ESP8266 Accesspoint bereit stelle.
Ich kann mir eig nur vorstellen das bei einem Datenbank Update irgend etwas umgestellt wurde und deswegen die Authentifizierung eines "veralteten" Clients (Sensor) nicht funktioniert. Da ich mich mit dem Sensor Profil über den Laptop auf der DB anmelden kann, gehe ich davon aus das die Profileinstellungen in der DB richtig sind.
das ist der teil des Sensor Programms der Hängt.
Serial.print("Connecting to SQL... ");
if (conn.connect(server_addr, 3306, user, password))
Serial.print("OK.");
else{
Serial.print("FAILED");
Aber daran habe ich nichts geändert, und ich habe damit schon Daten in die DB geschrieben gehabt.
Von allein updatet sich eine Datenbank aber nicht. Das musst Du schon selbst angestoßen haben und das solltest Du eigentlich wissen.
Schreibe auf dem ESP8266-AP Dir auf dem seriellen Monitor raus, was dort ankommt. Wenn das noch richtig ist, installiere Dir auf dem Laptop Etherreal und sniffe den Netzverkehr mit.
Es wäre dann mal sinnvoll sich die Releasnotes zu(m) / (den) Datenbankupdate(s) anzuschauen. Da sich ja anscheinend auf der „Arduinoseite“ nichts geändert hat, dürfte das Problem ja auf der Datenbankseite zu suchen sein. Evtl. wurde beim Update die DB Config überschrieben und die bind-address wieder auf localhost gesetzt.
Für mich sieht das wie eine Übertragungsstörung aus. Entweder der Arduino hat einen Fehler, oder in der Umgebung hat sich was geändert was das w-Lan-Signal stört.
Immerhin kann er die DB vom Lappi aus sauber erreichen.
Ganz Kleine Idee. Tausche man die Stromversorgung des Arduino. USB-Netzteile leiden unter der Angewohnheit gerne mal kaputt zu gehen. Meine Beere hat schon ihr 3.
hm, das klingt ja schon sinnvoll, aber wenn alle anderen gerate mit der DB kommunizieren können, sollte die Verbindung ja eigentlich stehen.
Ich habe nochmal in die release notes geguckt und da gab es am 25.09.24 ein Update auf MariaDB 11.7.0
Hier mal die Release notes
spannend fand ich den Teil:
### General
SESSION_USER(), which used to be an alias for USER() now shows the value of CURRENT_USER() when the session was created (MDEV-30908)
CURRENT_TIMESTAMP should return a TIMESTAMP (WITH TIME ZONE?) (MDEV-15751)
A warning has been added when max_sort_length is exceeded. (MDEV-27277)
auch wenn ich nicht ganz verstehe was da gemacht wurde, interpretier ich das so das vllt den Fehler hervorrufen, da der wert User einer neuen Funktion zugeordnet wird?
Kann aber auch sein das ich den Abschnitt Komplet falsch verstanden habe
So, ich wollte vorhin den AP auslesen und hab mich gewundert das der Wemos sich nicht abmeldet nachdem die SQL Verbindung fehlgeschlagen war. Dann habe ich die Datenbank kontrolliert und festgestellt.... jetzt geht alles wieder...ohne das ich irgend etwas gemacht habe.... das ist irgendwie schön aber auch frustrierend.
Das sind die schlimmsten Fehler. Ich hatte mal den Fall das mein Chef sein Diktiergerät 3 x in der Reparatur war. Und dort einwandfrei funktionierte. Bei ihm am Schreibtisch aber die Aufnahme total verbrummte. Bis ich auf die Idee kam mir eine Verlängerungsschnur zu nehmen, und eine Aufnahme zu machen die Sagt wo ich mit den Gerät gerade bin.
Dabei wurde ein Störfeld entdeckt. Ursache des Störfeld war damals das Netzteil der Ladeschale des Gigaset-Telefon.
Also verlass dich nicht darauf das es jetzt läuft. Sondern prüfe das sehr oft und regelmäßig nach. Nicht das eine Waschmaschine (nur als Beispiel) dafür Schuld ist.
tu ich nicht. ich habe die ganze anläge am zweiten tag mit auf Arbeit genommen und der Fehler war der gleiche, deshalb glaub ich nicht das das die Störung von einem dritten gerät kommt.
Ich habe ein USB Netzteil was Stört alle ESP32 wenn die über denn versorgt werden. Jedoch glaube nicht das dadurch zu fehlerhaften verbindung kommt wenn es schon mal bei dir funktioniert hat.
ja, zumal ich ja auch ein Modul mit Akku und eines mit usb getestet hatte mit dem gleichen Ergebnis in zwei verschiedenen Umgebungen
EDIT: Stop das stimmt nicht, der AP hing die ganze zeit am selben Netzteil mit dem selben Kabel vllt ist das das Problem gewesen. Ich habe die Fehlerursache so verkrampft am Sensor gesucht, dass ich den AP vollkommen vergessen habe.Ich prüfe das heute Nachmittag.