Cet article explique pourquoi l'utilisateur mysql.sys@localhost existe et à quoi il sert.
Le mysql.sys@localhost user est un utilisateur système utilisé comme définisseur pour la vue, les procédures et les fonctions dans le schéma sys. Il a été ajouté dans MySQL 5.7.9 pour éviter les problèmes si le DBA renomme l'utilisateur root@localhost. Voir aussi MySQL sys Schema dans le Manuel de référence.
Ce qui suit s'applique à l'utilisateur mysql.sys@localhost :
1. Il s'agit d'un utilisateur requis tant que le schéma sys est installé. Veuillez ne pas supprimer l'utilisateur.
2. Il est verrouillé par défaut, il ne peut donc pas être utilisé pour accéder à MySQL :
mysql> SHOW CREATE USER 'mysql.sys'@localhost\G *************************** 1. row *************************** CREATE USER for mysql.sys@localhost: CREATE USER 'mysql.sys'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT LOCK 1 row in set (0.00 sec)
Remarquez le VERROUILLAGE DU COMPTE.
3. Il utilise un mot de passe invalide (voir la sortie de SHOW CREATE USER ci-dessus). Cela garantit que si le compte est déverrouillé par erreur, il est toujours impossible de se connecter. Il est donc recommandé de ne pas réinitialiser le mot de passe.
Que sont les comptes d'utilisateurs réservés dans MySQL