Wie zeige ich die Serveraktivität für eine Amazon RDS für MySQL-DB-Instance an?

Lesedauer: 2 Minute
0

Wie kann ich die Serveraktivität für eine Amazon Relational Database Service (Amazon RDS) -DB-Instance einsehen, auf der MySQL ausgeführt wird?

Behebung

Mithilfe der Serveraktivität können Sie die Ursache von Leistungsproblemen ermitteln. Sie können den Status der InnoDB-Speicher-Engine überprüfen, laufende Abfragen identifizieren oder Deadlocks in der DB-Instance finden.

Sie müssen über Administratorrechte für den MySQL PROCESS-Server verfügen, um alle Threads sehen zu können, die auf einer MySQL-DB-Instance laufen. Wenn Sie keine Administratorrechte haben, zeigt SHOW PROCESSLIST nur die Threads an, die mit dem von Ihnen verwendeten MySQL-Konto verknüpft sind. Sie müssen außerdem über Administratorrechte für den MySQL PROCESS Server verfügen, um SHOW ENGINE verwenden zu können. Und Sie benötigen Administratorrechte für den MYSQL PROCESS Server, um Informationen über den Status der InnoDB-Speicher-Engine einzusehen.

Gehen Sie folgendermaßen vor, um die Serveraktivität für eine DB-Instance anzuzeigen:

1.Schalten Sie die allgemeinen und langsamen Abfrageprotokolle für Ihre MySQL-DB-Instance ein.

2.Stellen Sie eine Verbindung zu der DB-Instance her, auf der die MySQL-Datenbank-Engine ausgeführt wird.

3.Führen Sie die folgenden Befehle aus:

SHOW FULL PROCESSLIST\G
SHOW ENGINE INNODB STATUS\G

**Hinweis:**Um mehr als die ersten 100 Zeichen jeder Anweisung anzuzeigen, verwenden Sie das Schlüsselwort FULL.

4.Prüfen Sie, welche Transaktionen warten und welche Transaktionen die wartenden Transaktionen blockieren. Führen Sie je nach Version von Amazon RDS für MySQL, die Sie verwenden, einen dieser Befehle aus:

Für die Versionen 5.6 und 5.7:

SELECT r.trx_id waiting_trx_id, r.trx_mysql_thread_id waiting_thread, r.trx_query waiting_query, b.trx_id blocking_trx_id, b.trx_mysql_thread_id blocking_thread, b.trx_query blocking_query FROM information_schema.innodb_lock_waits w INNER JOIN information_schema.innodb_trx b ON b.trx_id = w.blocking_trx_id INNER JOIN information_schema.innodb_trx r ON r.trx_id = w.requesting_trx_id;

Für Version 8.0

ON r.trx_id = w.requesting_engine_transaction_id;INNER JOIN information_schema.innodb_trx r
ON b.trx_id = w.blocking_engine_transaction_id
INNER JOIN information_schema.innodb_trx b
FROM performance_schema.data_lock_waits w
b.trx_query blocking_query
b.trx_mysql_thread_id blocking_thread,
b.trx_id blocking_trx_id,
r.trx_query waiting_query,
r.trx_mysql_thread_id waiting_thread,
r.trx_id waiting_trx_id,

**Hinweis:**Es hat sich bewährt, diese Ausgaben in kurzen, aufeinanderfolgenden Intervallen (z. B. 60 Sekunden) zu erfassen. Die Überprüfung mehrerer Ausgänge kann einen umfassenderen Überblick über den Zustand des Motors bieten. Dies hilft Ihnen bei der Behebung von Leistungsproblemen.


Ähnliche Informationen

Überwachen von Metriken in einer Amazon RDS-Instance

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr