Syntaxe de FLUSH
<<<
Syntaxe de KILL Syntaxe de LOAD INDEX INTO CACHE
>>>

14.5.4 Autres commandes d'administration
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 CACHE INDEX
Syntaxe de FLUSH
->Syntaxe de KILL
Syntaxe de LOAD INDEX INTO CACHE
Syntaxe de la commande RESET

14.5.4.3 Syntaxe de KILL


KILL [CONNECTION | QUERY] thread_id
Chaque connexion à mysqld utilise un thread unique. Vous pouvez voir les threads en cours d'exécution en utilisant la commande SHOW PROCESSLIST et en terminer un avec la commande KILL thread_id .

Depuis MySQL 5.0.0, KILL autorise les options CONNECTION et QUERY :

  • KILL CONNECTION est similaire à KILL sans option : elle termine la connexion associée avec le thread thread_id .
  • KILL QUERY termine la requête que la connexion est actuellement en train de traiter, mais laisse la connexion ouverte.

Si vous avez le droit PROCESS , vous pouvez voir tous les threads. Si vous avez le droit SUPER , vous pouvez terminer tout les threads. Sinon, vous ne pouvez terminer que vos propres threads.

Vous pouvez aussi utiliser les commandes mysqladmin processlist et mysqladmin kill pour examiner et terminer les threads.

Note : vous ne pouvez actuellement pas utiliser KILL avec la bibliothèque du serveur embarqué, car celui-ci utilise les threads de l'application hôte, il ne crée pas ses propres threads.

Quand vous exécutez un KILL , un thread spécifique est crée pour ce thread.

Dans la plupart des cas, la terminaison du thread pourra prendre un certain temps vu que le thread de terminaison est invoqué à intervalles spécifiques.

  • Pour les boucles de SELECT , ORDER BY et GROUP BY , le thread de terminaison est vérifié après avoir lu un enregistrement. S'il est activé, la requête est abandonnée.
  • Lors d'un ALTER TABLE le thread de terminaison est vérifié avant la lecture de chacune des colonnes de la table d'origine. S'il est activé, la commande est abandonnée et la table temporaire effacée.
  • Lors d'un UPDATE ou d'un DELETE , le thread de terminaison est vérifié après chaque lecture de bloc et chaque mise à jour ou suppression de ligne. S'il est activé, la requête est abandonnée. Notez que si vous utilisez les transactions, les modifications ne seront pas perdues !
  • GET_LOCK() stoppera avec NULL .
  • Un thread INSERT DELAYED videra rapidement toutes les lignes en mémoire et se terminera.
  • Si le thread est dans le gestionnaire des verrous de tables (état : Locked ), le verrou sur la table sera vite enlevé.
  • Si le thread est en attente de libération d'espace disque lors d'un appel à write , l'opération est avortée avec un message d'erreur indiquant que le disque est plein.

<< Syntaxe de KILL >>
Syntaxe de FLUSH Autres commandes d'administration Syntaxe de LOAD INDEX INTO CACHE