Bei Verwendung von MySQL -Datenbanken müssen wir uns häufig mit der Situation befassen, in der die Datenbankverbindung nicht verbunden ist. Normalerweise führen wir die Verbindungserkennung im Code durch, und wenn die Datenbankverbindung getrennt ist, können wir versuchen, wieder zu verbinden. Eine häufige Möglichkeit ist die Verwendung der Funktion mySQLI_Ping (), um festzustellen, ob die Verbindung gültig ist, und MySQLi :: $ errno zu verwenden, um den Status der Verbindungswiederherstellung zu überprüfen.
MySQLI_Ping () ist eine Funktion, die von PHP bereitgestellt wird, um festzustellen, ob eine MySQL -Datenbankverbindung noch gültig ist. Wenn die Datenbankverbindung gültig ist, gibt die Funktion true zurück, andernfalls gibt sie false zurück. Wenn die Verbindung nicht verfügbar ist, können Sie diese Funktion verwenden, um die Verbindung wiederherzustellen.
<?php
$mysqli = new mysqli("m66.net", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// verwenden mysqli_ping() Überprüfen Sie, ob die Verbindung noch gültig ist
if (!$mysqli->ping()) {
echo "Trennung,Versuchen, sich wieder zu verbinden...<br>";
// Versuchen Sie, sich wieder zu verbinden
$mysqli = new mysqli("m66.net", "username", "password", "dbname");
// Überprüfen Sie, ob die Wiederverbindung erfolgreich ist
if ($mysqli->connect_error) {
die("重新Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
} else {
echo "Erfolgreich wieder verbinden!<br>";
}
} else {
echo "Die Verbindung bleibt gültig!<br>";
}
?>
Im obigen Code verwenden wir MySQLI_Ping () , um den Status der Datenbankverbindung zu erkennen. Wenn die Verbindung nicht verbunden ist, versuchen wir, die Datenbank wieder zu verbinden und zu überprüfen, ob die Verbindung erfolgreich ist.
MySQLI :: $ errno ist eine häufig verwendete Eigenschaft in PHP, die den Fehlercode für die neueste Datenbankoperation enthält. Wenn in der jüngsten Operation kein Fehler aufgetreten ist, beträgt der Wert von MySQLI :: $ errno 0 . Wenn die Datenbankverbindung erfolgreich wiederhergestellt wird, beträgt MySQLI :: $ errno ebenfalls 0. Wenn ein Verbindungsfehler oder ein anderer Datenbankfehler auftritt, gibt MySQLI :: $ errno einen Wert ungleich Null zurück, der die spezifische Ursache des Fehlers angibt.
<?php
$mysqli = new mysqli("m66.net", "username", "password", "dbname");
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// verwenden mysqli_ping() Überprüfen Sie, ob die Verbindung gültig ist
if (!$mysqli->ping()) {
echo "Trennung,Versuchen, sich wieder zu verbinden...<br>";
// Versuchen Sie, sich wieder zu verbinden
$mysqli = new mysqli("m66.net", "username", "password", "dbname");
// verwenden mysqli::$errno Bestätigen Sie, ob die Verbindung wiederhergestellt ist
if ($mysqli->connect_error) {
echo "重新Verbindung ist fehlgeschlagen,Fehlercode: " . $mysqli->connect_errno . "<br>";
} else {
echo "Erfolgreich wieder verbinden!<br>";
}
} else {
echo "Die Verbindung bleibt gültig!<br>";
}
?>
Im obigen Code bestätigen wir, ob die Verbindung durch Überprüfen von MySQLI :: $ errno wiederhergestellt wird. Wenn Sie versuchen, sich wieder zu verbinden, können Sie bei einem Verbindungsfehler den spezifischen Fehlercode über $ mysqli-> connect_errno abrufen, um Entwicklern zu helfen, das Problem zu verstehen.
Obwohl mySQLI_Ping () uns helfen kann, zu überprüfen, ob die Datenbankverbindung gültig ist, wenn die Verbindung nicht verbunden ist, kann es auf der Seite von MySQL Server einige Netzwerkfehler oder Probleme geben. Zu diesem Zeitpunkt kann MySQLI :: $ errno zusätzliche Fehlerinformationen bereitstellen, die uns helfen, das Problem besser zu diagnostizieren.
Beispielsweise kann MySQLI :: $ errno den folgenden Fehlercode zurückgeben:
2002 - Verbindungszeitlimit
1045 - Berechtigungsfragen
2003 - Zugriff auf den Datenbankserver kann nicht zugreifen
Durch die Kombination von MySQLI_Ping () und MySQLI :: $ errno können wir den Status von Datenbankverbindungen klarer verstehen und entsprechende Maßnahmen ergreifen.
Die Verwendung von MySQLI_Ping () , um den Datenbankverbindungsstatus zu überprüfen und zu bestätigen, ob er über MySQLI :: $ errno wieder normalisiert wird, ist eine sehr effektive Möglichkeit, mit Datenbankverbindungsproblemen umzugehen. Das Kombinieren dieser beiden kann uns dabei helfen, Probleme mit Datenbankverbindungen schnell zu erkennen und zu behandeln, um die Stabilität und Zuverlässigkeit des Programms zu gewährleisten.
Nach der obigen Methode können wir leicht sicherstellen, dass die Verbindung zur MySQL -Datenbank in einem gesunden Zustand liegt und Fehler reduzieren, die durch den Verbindungsverlust verursacht werden. Denken Sie daran, dass die rechtzeitige Erkennung und Behandlung von Datenbankverbindungsproblemen der Schlüssel zur Gewährleistung des stabilen Betriebs des Systems ist.