SHOW PRIVILEGES
<<<
Syntaxe de SHOW PROCESSLIST Syntaxe de SHOW STATUS
>>>

14.5.3 Syntaxe de SHOW
14.5 Référence de langage d'administration de la base de données
14 Syntaxe des commandes SQL
 Manuel de Référence MySQL 4.1 : Version Française

Syntaxe de SET
Commande SHOW CHARACTER SET
SHOW COLLATION
SHOW COLUMNS Syntax
Syntaxe de SHOW CREATE DATABASE
Syntaxe de SHOW CREATE TABLE
Obtenir des informations sur les bases, tables, colonnes et index
Syntaxe SHOW ENGINES
Syntaxe de SHOW ERRORS
SHOW GRANTS
Syntaxe de SHOW INDEX
Syntaxe de SHOW INNODB STATUS
Syntaxe de SHOW LOGS
SHOW PRIVILEGES
->Syntaxe de SHOW PROCESSLIST
Syntaxe de SHOW STATUS
SHOW TABLE STATUS
Syntaxe SHOW TABLES
Syntaxe de SHOW VARIABLES
SHOW WARNINGS | ERRORS

14.5.3.15 Syntaxe de SHOW PROCESSLIST

SHOW [FULL] PROCESSLIST affiche la liste de processus qui sont en cours d'exécution. Vous pouvez aussi obtenir ces informations avec la commande en ligne mysqladmin processlist . Si vous avez les droits de SUPER , vous pourrez aussi voir les autres threads. Sinon, vous ne pourrez voir que les votre. Syntaxe de KILL . Si vous n'utilisez pas l'option FULL , seuls les 100 premiers caractères de chaque requête seront affichés.

Cette commande est très pratique si vous obtenez trop d'erreurs 'too many connections' et que vous voulez savoir ce qui se passe. MySQL réserve une connexion supplémentaire pour un client ayant les droits de SUPER , de façon à ce qu'il y ait toujours la possibilité de se connecter et de vérifier le système (en supposant que vous ne donnez pas ce droit à tous vos utilisateurs).

Certains états sont souvent disponible dans le résultat de mysqladmin processlist
  • Checking table Le thread fait une vérification (automatique) de la table.
  • Closing tables Le thread est en train d'écrire les données modifiées sur le disque, et il va fermer les tables. Cela doit être une opération très rapide. Si ce n'est pas le cas, vous devriez vérifier si vous n'avez pas un disque plein, ou que le disque est sous haute charge.
  • Connect Out Connexion d'un esclave sur le maître.
  • Copying to tmp table on disk Le résultat temporaire était plus grand que tmp_table_size et le thread passe d'une table en mémoire à une table sur disque.
  • Creating tmp table Le thread est en train de créer une table temporaire pour contenir le résultat d'une requête.
  • deleting from main table Lors de l'exécution de la première partie d'une requête d'effacement multi-table, et que MySQL n'a commencé à effacer que dans la première table.
  • deleting from reference tables Lors de l'exécution de la deuxième partie d'une requête d'effacement multi-table, et que MySQL a commencé à effacer dans les autres tables.
  • Flushing tables Le thread exécute la commande FLUSH TABLES et il attend que tous les threads ferme leur tables.
  • Killed Quelqu'un a envoyé une commande KILL et le thread s'annuler la prochaine fois qu'il vérifie l'option de kill. Cette option est vérifiée dans chaque boucle majeure de MySQL, mais dans certains cas, il peut lui prendre un court instant avant de s'arrêter. Si le thread est verrouillé par un autre thread, l'arrêt va prendre effet aussitôt que l'autre thread lève son verrou.
  • Sending data Le thread traite des lignes pour une commande SELECT et il envoie les données au client.
  • Sorting for group Le thread est en train de faire un tri pour satisfaire une clause GROUP BY .
  • Sorting for order Le thread est en train de faire un tri pour satisfaire une clause ORDER BY .
  • Opening tables Cela signifie simplement que le thread essaie d'ouvrir une table. Ce doit être une opération très rapide, à moins que quelque chose ne retarde l'ouverture. Par exemple, une commande ALTER TABLE ou LOCK TABLE peut empêcher l'ouverture de table, jusqu'à l'achèvement de la commande.
  • Removing duplicates La requête utilisait SELECT DISTINCT de telle manière que MySQL ne pouvait pas optimiser les lignes distinctes au début du traitement. A cause de cela, MySQL doit effectuer une opération de plus pour supprimer toutes les lignes en doubles, avant d'envoyer les lignes au client.
  • Reopen table Le thread a reçu un verrou pour une table, mais a noté après l'avoir reçu que la structure de la table a changé. Il a libéré le verrou, fermé la table, et maintenant il essaie de la réouvrir.
  • Repair by sorting Le thread répare la table en utilisant la méthode de tri pour créer l'index.
  • Repair with keycache Le thread répare la table en utilisant la méthode de création des clés à partir du cache de clé. C'est bien plus lent que la réparation par tri .
  • Searching rows for update Le thread effectue une première phase pour trouver toutes les lignes qui satisfont les critères avant de les modifier. Cela doit être fait si UPDATE modifie l'index qui sera utilisé pour trouver les lignes.
  • Sleeping Le thread attend que le client envoie une nouvelle commande.
  • System lock Le thread attend le verrou externe pour la table. Si vous n'utilisez pas de serveurs MySQL multiples qui exploitent les mêmes tables, vous pouvez désactiver les verrous systèmes avec l'option --skip-external-locking .
  • Upgrading lock Le gestionnaire de INSERT DELAYED essaie d'obtenir un verrou pour insérer des lignes.
  • Updating Le thread recherche des lignes pour les modifier.
  • User Lock Le thread attend un GET_LOCK() .
  • Waiting for tables Le thread a reçu l'annonce que la structure de table a été modifiée, et il doit réouvrir la table pour obtenir une nouvelle structure. Pour être capable de réouvrir la table, il doit attendre que les autres threads aient fermé la table en question.Cette annonce survient lorsqu'un autre autre thread a été utilisé avec la commande FLUSH TABLES ou une des commandes suivantes, appliquées à la table en question : FLUSH TABLES table_name , ALTER TABLE , RENAME TABLE , REPAIR TABLE , ANALYZE TABLE ou OPTIMIZE TABLE .
  • waiting for handler insert Le gestionnaire de INSERT DELAYED a traité toutes insertions, et en attend de nouvelles.

La plupart des états sont des opérations très rapides. Si le thread s'attarde dans un de ces états pour plusieurs secondes, il doit y avoir un problème qui mérite d'être étudié.

Il existe encore d'autres états qui ne sont pas mentionné ci-dessus, mais la majorité sont utilisés pour trouver des bogues dans mysqld .

<< Syntaxe de SHOW PROCESSLIST >>
SHOW PRIVILEGES Syntaxe de SHOW Syntaxe de SHOW STATUS