404 Stimmen

MySQL - Zwang zur Nichtverwendung des Cache zum Testen der Abfragegeschwindigkeit

Ich teste gerade die Geschwindigkeit einiger Abfragen in MySQL. Die Datenbank speichert diese Abfragen zwischen, was es mir erschwert, beim Testen der Geschwindigkeit dieser Abfragen zuverlässige Ergebnisse zu erhalten.

Gibt es eine Möglichkeit, die Zwischenspeicherung für eine Abfrage zu deaktivieren?

System: MySQL 4 auf Linux Webhosting, ich habe Zugang zu PHPMyAdmin.

Gracias

601voto

Jarod Elliott Punkte 15024

Versuchen Sie, die SQL_NO_CACHE (MySQL 5.7) Option in Ihrer Abfrage. (MySQL 5.6-Benutzer klicken HIER )

z. B.

SELECT SQL_NO_CACHE * FROM TABLE

Dadurch wird verhindert, dass MySQL die Ergebnisse zwischenspeichert. Beachten Sie jedoch, dass auch andere Betriebssystem- und Festplatten-Caches die Leistung beeinträchtigen können. Diese sind schwieriger zu umgehen.

140voto

John Carter Punkte 52192

Eine weitere Alternative, die nur die aktuelle Verbindung betrifft:

SET SESSION query_cache_type=0;

75voto

mediobit Punkte 631

Jeder Verweis auf das aktuelle Datum/die aktuelle Uhrzeit deaktiviert den Abfrage-Cache für diese Auswahl:

SELECT *,NOW() FROM TABLE

Siehe "Voraussetzungen und Hinweise für die Verwendung des MySQL-Query-Cache". @ http://dev.mysql.com/tech-resources/articles/mysql-query-cache.html

32voto

barbushin Punkte 4987

Es gibt auch eine Konfigurationsoption: query_cache_size=0

Um den Abfrage-Cache beim Start des Servers zu deaktivieren, setzen Sie die Systemvariable query_cache_size auf 0. Durch das Deaktivieren des Abfrage-Cache-Codes gibt es keinen spürbaren Overhead. Wenn Sie MySQL aus dem Quellcode bauen, können Sie die Abfrage-Cache-Fähigkeiten vollständig aus dem Server ausschließen, indem Sie configure mit der Option --without-query-cache aufrufen.

Véase http://dev.mysql.com/doc/refman/5.1/en/query-cache.html

25voto

djt Punkte 461

Sie können auch den folgenden Befehl ausführen, um den Abfrage-Cache zurückzusetzen.

RESET QUERY CACHE

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X