Indexberater verwenden

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 Flag cloudsql_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.