J'ai les subventions suivantes pour un utilisateur / une base de données
mysql> SHOW GRANTS FOR 'username'@'localhost';
+---------------------------------------------------------------------------+
| Grants for username@localhost                                             |
+---------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'username'@'localhost' IDENTIFIED BY PASSWORD 'xxx' |
| GRANT ALL PRIVILEGES ON `userdb`.* TO 'username'@'localhost'              |
+---------------------------------------------------------------------------+
Pour activer l'accès externe à la base de données, je dois changer localhost en %. Une façon de faire est d'utiliser REVOKEtoutes les autorisations et de le définir à nouveau. Le problème est qu'il existe un mot de passe que je ne connais pas. Par conséquent, si je révoque l'autorisation, je ne peux pas le rétablir.
Existe-t-il un moyen de changer le nom localhostd' hôte en %(et de revenir) sans révoquer l'autorisation elle-même?
mysql.userSETHost= 'localhost' WHEREuser.Host= '%' ETuser.User= 'XXXdbusr';