Datenbanken und Schnittstellen

Achtung, öffnet in einem neuen Fenster. PDFDruckenE-Mail

MySQL auf Windows: Can't connect to MySQL server on 'localhost' (10048)

Aktualisiert (Dienstag, den 23. Februar 2010 um 00:47 Uhr) Geschrieben von: Johannes Schlimm Montag, den 22. Februar 2010 um 12:35 Uhr

Wenig bekanntes Problem mit MySQL auf Windows Webservern

Da hat man nun eine PHP-Webanwendung mit MySQL-Anbindung ausgiebig getestet und lange Zeit lief die Sache auch auf dem Produktivsystem, hier einem Windows 2003-Webserver, ohne Probleme. Die Website hat wachsenden Zuspruch, was zunächst einmal erfreulich ist. Eines Tages aber gibt es plötzlich Probleme und im Fehler-Log stehen haufenweise Meldungen die darauf hinweisen, dass Datenbank-Connects fehlschlagen.

 

Achtung, öffnet in einem neuen Fenster. PDFDruckenE-Mail

mysqli: Commands out of sync; you can't run this command now

Aktualisiert (Dienstag, den 23. Februar 2010 um 00:48 Uhr) Geschrieben von: Johannes Schlimm Sonntag, den 21. Februar 2010 um 17:39 Uhr

Es scheint einige Konfusion im Zusammenhang mit der PHP-Datenbankschnittstelle php_mysqli zu geben, was den Umgang mit Prepared Statements und Queries angeht. Speziell, wenn alle Operationen auf einer einzigen Connection ausgeführt werden sollen. Wenn man in der Suchmaschine seiner Wahl nach der Zeichenkette "Commands out of sync; you can't run this command now" und mysqli sucht, dann bekommt man eine fast unüberschaubare Anzahl von Fundstellen geliefert. Darunter sind sogar einige von Live-Sites. Ähem, da hat wohl jemand auf dem Produktivsystem mal wieder die ini-Direktive display_errors auf On stehen lassen. Bitte unbedingt abstellen! Für Hacker, die nichts Gutes im Schilde führen, ist sowas ein gefundenes Fressen!