Wenn Sie eine MySQL -Datenbank in PHP bedienen, stoßen Sie manchmal auf das Problem, dass zwischengespeicherte Daten nicht rechtzeitig aktualisiert werden. Der Caching -Mechanismus von MySQL kann die Effizienz der Abfrage verbessern. In einigen Fällen müssen wir jedoch den Cache aktualisieren, um sicherzustellen, dass die neuesten Daten erhalten werden. Die Funktion von MySQLI :: Refresh ist das Tool, das zur Implementierung dieser Funktion verwendet wird.
In diesem Artikel wird die Verwendung der MySQLI :: -Refresh -Funktion ausführlich vorgestellt, erläutert, wie man sie korrekt aufruft, um den MySQL -Cache zu aktualisieren und den Beispielcode zu begleiten, um zu verstehen.
MySQLI :: Refresh ist eine Methode, die von der MySQLI -Erweiterung in PHP bereitgestellt wird, mit der Entwickler die Statusinformationen und den Cache des MySQL -Servers aktualisieren können. Es entspricht dem Flush -Betrieb von MySQL und kann verschiedene Caches wie Tabellencache, Abfrage -Cache usw. aktualisieren.
public bool mysqli::refresh(int $options)
$ Optionen : Eine Kombination aus einer oder mehreren Aktualisierungsoptionen, die normalerweise vordefinierte Konstanten verwendet.
Rückgabewert: Rückgabe true Wenn die Ausführung erfolgreich ist, und falsch zurückgeben, wenn der Fehler falsch ist.
Hier sind einige ständige Optionen, die von MySQLI :: Refresh unterstützt werden und in Kombination verwendet werden können:
MySQLI_REFRESH_GRANT : Cache im Zusammenhang mit dem Berechtigungsberechtigten.
MySQLI_REFRESH_LOG : Aktualisieren Sie die Protokolldatei.
MySQLI_REFRESH_TABLE : Aktualisieren Sie den Tabellencache.
MySQLI_REFRESH_HOSTS : Aktualisieren Sie den Host -Cache.
MySQLI_REFRESH_STATUS : Aktualisieren Sie die Statusvariable.
MySQLi_Refresh_Threads : Thread -Cache aktualisieren.
MySQLI_REFRESH_SLAVE : Aktualisieren Sie die Informationen zur Replikation der Master-Slave.
MySQLI_REFRESH_MASTER : Aktualisieren Sie die wichtigsten serverbezogenen Informationen.
MySQLI_REFRESH_QUEY_CACHE : Aktualisieren Sie den Abfrage -Cache.
Das folgende Beispiel zeigt, wie Sie eine Verbindung zu einer MySQL -Datenbank herstellen und den Abfrage -Cache aktualisieren:
<?php
$mysqli = new mysqli("gitbox.net", "username", "password", "database");
if ($mysqli->connect_errno) {
echo "Verbindung ist fehlgeschlagen: " . $mysqli->connect_error;
exit();
}
// Query -Cache aktualisieren
if ($mysqli->refresh(MYSQLI_REFRESH_QUERY_CACHE)) {
echo "Abfragen von Cache erfolgreich aktualisieren";
} else {
echo "Die Aktualisierung von Abfragen Cache fehlgeschlagen: " . $mysqli->error;
}
$mysqli->close();
?>
Die Option MySQLI_Refresh_query_cache wird hier verwendet, um den MySQL -Abfrage -Cache zu aktualisieren.
Wenn Sie mehrere Caches gleichzeitig aktualisieren möchten, können Sie Konstanten mit Bitwise oder Operators | übergeben Kombination:
$mysqli->refresh(MYSQLI_REFRESH_TABLES | MYSQLI_REFRESH_QUERY_CACHE);
Dieser Code aktualisiert den Tabellen -Cache und den Abfragemarkt.
Befreiungen Ausgabe : Der Vorgang zum Aktualisieren des Cache erfordert in der Regel Administratorberechtigte (z. B. Reload -Berechtigungen), andernfalls schlägt die Ausführung fehl.
Cache -Aktualisierungskosten : Die häufige Aktualisierung des Cache kann die Datenbankleistung beeinflussen und wird empfohlen, diese gegebenenfalls zu verwenden.
Anwendungsbereich : MySQLI :: Aktualisierung wird hauptsächlich in Szenarien verwendet, die eine manuelle Steuerung der Cache -Aktualisierung erfordern, z. B. Entwicklungs- und Debugging- oder Betriebs- und Wartungsskripte.
Durch die Verwendung der MySQLI :: Refresh- Funktion können PHP-Entwickler mySQL-Cache-Aktualisierung flexibler steuern, um die Datenkonsistenz und die aktuelle Aufgabe zu gewährleisten.