Auf dieser Seite wird der Indexberater von Cloud SQL for MySQL beschrieben und wie Sie seine Indexempfehlungen aufrufen und anwenden können.
Cloud SQL for MySQL bietet einen Indexberater, der die Abfragen verfolgt, die Ihre Datenbank verarbeitet. Diese Abfragen werden regelmäßig analysiert, um neue Indexe zu empfehlen, mit denen sich die Leistung der Abfragen steigern lässt.
Sie können sich die Empfehlungen des Indexberaters als Tabelle ansehen und abfragen oder jederzeit eine Analyse und einen Bericht anfordern.
Indexberaterempfehlungen aktivieren
Wenn Sie Empfehlungen für Indexberater aktivieren möchten, richten Sie Gemini in Datenbanken ein.
Indexberaterempfehlungen deaktivieren
Entfernen Sie das Flagcloudsql_index_advisor
aus Ihrer Cloud SQL for MySQL-Instanz, um die Indexberaterempfehlungen zu deaktivieren. Wenn Sie das Flag performance_schema
für Index Advisor aktiviert haben, können Sie das Flag performance_schema
aktiviert lassen oder deaktivieren.
Weitere Informationen zum Entfernen eines Flags aus Ihrer Instanz finden Sie unter Datenbank-Flags konfigurieren.
Indexberaterempfehlungen ansehen
Cloud SQL for MySQL führt regelmäßig die Analyse des Indexberaters aus.
Die Ergebnisse finden Sie in der folgenden Tabelle in der Datenbank mysql
:
mysql.cloudsql_db_advisor_recommended_indexes
: Hier werden alle empfohlenen neuen Indexe für jede Datenbank aufgelistet. Außerdem enthält er Schätzungen für den für jeden Index erforderlichen Speicherplatz und die Anzahl der Abfragen, auf die sich jeder Index auswirken kann.
Wenn Sie beispielsweise die Ergebnisse der letzten Analyse der Indexempfehlung in Tabellenform sehen möchten, führen Sie diese Abfrage aus:
SELECT * FROM mysql.cloudsql_db_advisor_recommended_indexes;
Empfehlungen des Indexberaters anwenden
Die Spalte index
der Tabelle mysql.cloudsql_db_advisor_recommended_indexes
enthält in jeder Zeile eine vollständige MySQL-DDL-Anweisung CREATE INDEX
zum Generieren des in dieser Zeile empfohlenen Index.
Führen Sie diese DDL-Anweisung genau wie dargestellt aus, um die Empfehlung dieser Zeile anzuwenden.
Betrachten Sie beispielsweise diese Ausgabe bei der manuellen Ausführung einer Analyse mithilfe der im vorherigen Abschnitt beschriebenen Abfrage:
index | estimated_storage_size_in_mb
--------------------------------------------+------------------------------
CREATE INDEX ON "School"."Students"("age") | 3
(1 row)
Dieser Bericht enthält eine einzige Empfehlung: Fügen Sie der Spalte age
in der Tabelle Students
des Schemas School
einen Index mit einer einzelnen Spalte hinzu. Geben Sie eine DDL-Abfrage wie im Bericht dargestellt ein, um diese Empfehlung anzuwenden:
CREATE INDEX ON "School"."Students"("age");
Indexberater konfigurieren
Der Indexierungsberater ist so konzipiert, dass er mit seinen Standardeinstellungen für die meisten Anwendungsfälle funktioniert. Sie können sein Verhalten jedoch durch Festlegen verschiedener Datenbank-Flags optimieren.
Standardmäßig wird der Indexierungsberater einmal alle 24 Stunden ausgeführt. Sie können die Zeit für die automatische Planung mit dem Flag cloudsql_index_advisor_auto_advisor_schedule
ändern oder mit dem Flag cloudsql_index_advisor_run_at_timestamp
eine Ad-hoc-Analyse für ein bestimmtes Datum und eine bestimmte Uhrzeit ausführen.
Weitere Informationen finden Sie unter Flags für den Indexberater.