Was ist der beste Weg, um von PHP aus zu überprüfen, ob die Verbindung zu einem MySQL Server erfolgreich ist? Ich habe einige Lösungen gesehen, die zuerst versuchen, eine Socket-Verbindung (mit fsockopen
) zu öffnen und eine Verbindung zu MySQL herzustellen (über die von Ihnen verwendete Erweiterung), nur wenn die Socket-Verbindung erfolgreich war. Ich bin mir da nicht so sicher, da man jedes Mal zwei Verbindungen herstellen muss, ob das den Server zu sehr belastet.Prüfen, ob der MySQL-Server Verbindungen akzeptieren kann
Mein Problem ist, dass, wenn mein MySQL-Server stürzt oder aus irgendeinem Grund nicht mehr funktioniert, die Webseite nicht mehr funktioniert (sie lädt lange und kommt dann normalerweise mit einem 504-Gateway-Timeout-Fehler zurück). Ich möchte eine benutzerfreundliche Fehlermeldung anzeigen, wenn MySQL nicht verfügbar ist. Dies würde hoffentlich auch verhindern, dass MySQL noch mehr Schaden nimmt, wenn es bereits kämpft, da neue Clients erst dann eine Verbindung herstellen, wenn der Server wieder verfügbar ist.
Ich verwende MySQLi Erweiterung, wenn das relevant ist.
sollte kein mySQL Verbindungsversuch Zeit relativ schnell aus, wenn Fehler? –
hängt von connect_timeout Einstellung – ajreal