it-swarm.com.de

Was ist die Verwendung von InnoDB-Puffern und wie wird sie gelöscht?

In MySQL Workbench gibt es, wenn ich in Server > Server Status Gehe, ein Feld mit dem Namen "InnoDB Buffer Usage" Es ist "95%", auch wenn keine Abfrage ausgeführt wird. Warum? Es wirkt sich auf meine Leistung in meinen neuen Abfragen aus? Gibt es einen Weg, es zu klären?

8
dax90

Angenommen, Ihr Dataset ist größer als Ihr Pufferpool, eine Auslastung von 95% ist nicht nur normal, sondern ein gewünschter Status. Sie möchten so viele Informationen wie möglich über Speicherhardware und -ressourcen verwenden, damit sowohl die nächsten Lese- als auch Schreibvorgänge schneller ausgeführt werden können als der Zugriff auf die Festplatte.

Eine andere Sache ist wenn diese Speichernutzung effektiv genutzt wird oder nicht: Wenn Ihre Lesetrefferquote hoch ist und Sie Schreibvorgänge effektiv puffern können, können Sie dies überprüfen, indem Sie die Anzahl der Festplatten-IOPS (von) beobachten Abfragen von InnoDB- und OS-Statistiken) und Pufferpoolinhalten (verfügbar in den Tabellen information_schema).

Wenn Ihr Server inaktiv ist, machen Sie sich keine Sorgen über die Speichernutzung. (vorausgesetzt, Ihr Dataset ist größer als Ihr Pufferpool und Ihr Pufferpool ist kleiner als Ihr physischer Speicher) - Der Pufferpool füllt sich auf natürliche Weise wie Sie Daten lesen und schreiben; und es wird mehr oder weniger als komplexere Version einer LRU-Richtlinie verwendet (weniger verwendete Daten werden zuerst entfernt). Sofern Sie diesen Speicher nicht für etwas anderes verwenden möchten, da es sich nicht um einen dedizierten Server handelt (verringern Sie also die Nutzung Ihres Pufferpools), werden Sie die meisten Leute beneiden, dass die vollständige Auslastung des Pufferpools ein gewünschter Zustand ist.

Bitte beachten Sie, dass die meisten Betriebssysteme (Dateien) auf die gleiche Weise zwischenspeichern - sofern der Speicher nicht für andere Zwecke verwendet wird, versuchen sie, so viele Daten wie möglich in den Speicher zu passen.

Durch einen Neustart des Servers wird normalerweise der größte Teil des Pufferpools gelöscht. sofern nicht für das Vorladen konfiguriert.

10
jynus