Comment afficher l'activité du serveur pour une instance de base de données MySQL Amazon RDS ?

Date de la dernière mise à jour : 13/12/2019

Comment voir l'activité du serveur d'une instance de base de données Amazon Relational Database Service (Amazon RDS) qui exécute MySQL ?

Solution

Vous pouvez utiliser l'activité du serveur pour identifier la source des problèmes de performances en affichant l'état du moteur de stockage InnoDB, en identifiant les requêtes en cours d'exécution ou en recherchant des interblocages sur l'instance de base de données.

Vous devez disposer des privilèges d'administration de serveur MySQL PROCESS pour voir tous les threads s'exécuter sur une instance de base de données MySQL. Si vous ne disposez pas des privilèges d'administrateur, SHOW PROCESSLIST affiche uniquement les threads associés au compte MySQL que vous utilisez. Vous devez également disposer des privilèges d'administration du serveur MySQL PROCESS pour utiliser SHOW ENGINE et afficher des informations sur l'état du moteur de stockage InnoDB.

Pour afficher l'activité du serveur pour une instance de base de données, procédez comme suit :

1.    Activez le journal général et le journal des requêtes lentes pour votre instance de base de données MySQL.

2.    Connectez-vous à une instance de base de données exécutant le moteur de base de données MySQL.

3.    Exécutez les commandes suivantes :

SHOW FULL PROCESSLIST\G
SHOW ENGINE INNODB STATUS\G

Remarque : pour afficher plus de 100 caractères pour chaque instruction, utilisez le mot-clé FULL.

4.    Pour voir quelles transactions sont en attente et quelles transactions bloquent les transactions en attente :

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;

Remarque : une bonne pratique consiste à collecter ces sorties à intervalles courts et consécutifs (par exemple, 60 secondes). L'examen de plusieurs sorties peut fournir une vue plus large de l'état du moteur, ce qui peut vous aider à résoudre les problèmes de performances.


Cet article vous a-t-il été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?