> Wenn Sie möchten, bereinigen Sie etwas MySQL, das Sie verwenden möchten Um den internen Cache zu löschen, sollten Sie den FLUSH-Befehl verwenden. Um FLUSH auszuführen, müssen Sie über die Berechtigung zum erneuten Laden verfügen.Mysql-Cache-Löschmethode: Verwenden Sie die FLUSH-Syntax, um den Cache zu leeren. Um FLUSH auszuführen, müssen Sie über die Berechtigung zum erneuten Laden verfügen. Die Syntax lautet [FLUSH Flush_option [,flush_option]].
LOGS Schließen Sie die aktuelle Binärprotokolldatei und erstellen Sie eine neue Datei. Der Name der neuen Binärprotokolldatei wird um 1 zur Nummer der aktuellen Binärdatei addiert.
flush_option
kann einer der folgenden sein:HOSTS Dies wird am häufigsten verwendet und kommt am häufigsten vor. Wird hauptsächlich zum Löschen der Host-Cache-Tabelle verwendet. Wenn einige Ihrer Hosts die IP-Nummern ändern oder wenn Sie die Fehlermeldung „Host... ist blockiert“ erhalten, sollten Sie die Hosttabelle leeren. Wenn für einen bestimmten Host beim Herstellen einer Verbindung zum MySQL-Server kontinuierlich mehr als max_connect_errors-Fehler auftreten, blockiert MySQL aus Sicherheitsgründen weitere Verbindungsanfragen vom Host. Durch das Löschen der Host-Tabelle kann der Host erneut versuchen, eine Verbindung herzustellen.
flush_option
可以是下列任何东西:HOSTS 这个用的最多,经常碰见。主要是用来清空主机缓存表。如果你的某些主机改变IP数字,或如果你得到错误消息Host ... isblocked,你应该清空主机表。当在连接MySQL服务器时,对一台给定的主机有多于 max_connect_errors个错误连续不断地发生,MySQL为了安全的需要将会阻止该主机进一步的连接请求。清空主机表允许主机再尝试连接。
LOGS 关闭当前的二进制日志文件并创建一个新文件,新的二进制日志文件的名字在当前的二进制文件的编号上加1。
PRIVILEGES 这个也是经常使用的,每当重新赋权后,为了以防万一,让新权限立即生效,一般都执行一把,目地是从数据库授权表中重新装载权限到缓存中。
TABLES 关闭所有打开的表,同时该操作将会清空查询缓存中的内容。
FLUSH TABLES WITH READ LOCK 关闭所有打开的表,同时对于所有数据库中的表都加一个读锁,直到显示地执行unlock tables,该操作常常用于数据备份的时候。
STATUS 重置大多数状态变量到0。
MASTER 删除所有的二进制日志索引文件中的二进制日志文件,重置二进制日志文件的索引文件为空,创建一个新的二进制日志文件,不过这个已经不推荐使用,改成reset master 了。可以想象,以前自己是多土啊,本来一条简单的命令就可以搞定的,却要好几条命令来,以前的做法是先查出来当前的二进制日志文件名,再用purge 操作。
QUERY CACHE 重整查询缓存,消除其中的碎片,提高性能,但是并不影响查询缓存中现有的数据,这点和Flush table 和Reset Query Cache(将会清空查询缓存的内容)不一样的。
SLAVE 类似于重置复制吧,让从数据库忘记主数据库的复制位置,同时也会删除已经下载下来的relay log,与Master一样,已经不推荐使用,改成Reset Slave了。这个也很有用的。
一般来讲,Flush操作都会记录在二进制日志文件中,但是FLUSH LOGS
、FLUSH MASTER
、FLUSH SLAVE
、FLUSH TABLES WITH READ LOCK
QUERY CACHE organisiert den Abfragecache neu, eliminiert Fragmente und verbessert die Leistung, hat jedoch keinen Einfluss auf die vorhandenen Daten im Abfragecache. Dies ähnelt der Funktion „Tabelle leeren“ und „Abfragecache zurücksetzen“. zwischengespeicherten Inhalt abfragen) sind unterschiedlich.
SLAVE ähnelt dem Zurücksetzen der Replikation. Dadurch vergisst die Slave-Datenbank den Replikationsspeicherort der Master-Datenbank und löscht auch das heruntergeladene Relay-Protokoll. Dies wird nicht mehr empfohlen und geändert zum Zurücksetzen. Das ist auch sehr nützlich.
Im Allgemeinen werden Flush-Vorgänge in binären Protokolldateien aufgezeichnet, aber🎜🎜FLUSH LOGS
,FLUSH MASTER
,FLUSH SLAVE code>, <code>FLUSH TABLES WITH READ LOCK
wird nicht aufgezeichnet. Wenn die oben genannten Vorgänge also in der Binärprotokolldatei aufgezeichnet werden, wirkt sich dies auf die Slave-Datenbank aus. Wenn Sie mehr über das Erlernen des Programmierens erfahren möchten, achten Sie bitte auf die Spalte „PHP-Schulung“!
Das obige ist der detaillierte Inhalt vonSo leeren Sie den Cache in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!