[Mysql] : comment déconnecter un utilisateur ? (de force)

Print Friendly, PDF & Email

Mysql est un moteur de bdd performant et sympathique à l’utilisation, un peu à l’image de postgres. Si vous utilisez un WAMP ou LAMP pour faire vos développements, vous utilisez donc Mysql. C’est d’ailleurs certainement ce qui a permis la très forte progression de ce moteur ces dernières années.

Retrouvez d’autres articles sur la page databases.

Un DBA lorsqu’il doit intervenir sur une base ou un moteur, doit parfois être le seul connecter à la base ou à la machine. Mais certaines applications ne rendent pas la main très facilement. C’est souvent moins le cas des utilisateurs humains mais cela peut aussi être le cas d’une personne réticente ou encore mieux le DBA a besoin d’y aller comme un gros bourin et décide de reprendre la main de force.

Bref c’est dans ces derniers cas que l’on peut s’intéresser à vouloir déconnecter un user par la force (en lui coupant son processus).

Comment fait-on ?

La première chose à faire c’est de lister les processus en cours et les users et bases correspondants.

Voici la commande :

mysql> show processlist;

le résultat prend la forme suivante :

 +-----+------+-----------+---------+---------+-------+-------+------------------+
    | Id  | User | Host      | db      | Command | Time  | State | Info             |
    +-----+------+-----------+---------+---------+-------+-------+------------------+
    | 235 | appli1 | 192.20.1.2 | mydb | Query   | 28619 |       | NULL             |
    | 238 | owner | localhost | mydb | Query   |   853 |       | NULL             |
    | 241 | owner | localhost | NULL    | Query   |     0 | NULL  | show processlist |
    +-----+------+-----------+---------+---------+-------+-------+------------------+
    3 rows in set (0.00 sec)

Dans notre cas nous voulons déconnecter appli1. Pour cela il suffit de repérer l’Id de la session (soit 235). Puis lancer :

mysql> kill 235

Et voilà le user appli1 est déconnecté.

Découvrez  [Mysql] :Comment diagnostiquer et optimiser votre base et moteur ? avec mysqltuner

N’hésitez pas en commentaire à partager vos pratiques sur mysql.

MySQL.svg