Otorgar derechos a la base de datos MySQL adicional causando problemas

Tengo un usuariomyusery dos bases de datos. 'db1'y'db2'.

'myuser'ya tiene derechos de usodb1 y quería concederle permiso adicional para usar 'db2'utilizando la siguiente consulta:

GRANT ALL ON db2.* TO 'myuser'@'localhost';

Después de que ejecuté la declaración de subvención,myuser'Perdí la conexión a la primera base de datos'db1'

Me temo que usé un nombre de host incorrecto. En lugar de 'localhost' debería haber usado '%'. Cuando lo hago:

 select host from mysql.user where user = 'myuser';

Ahora veo dos registros de host'%' ylocalhost'para ese usuario

Cuando ejecuto las sentencias SHOW GRANT obtengo permisos para diferentes hosts. 'localhost' y '%'.

mysql> SHOW GRANTS FOR 'myuser'@'localhost';
+----------------------------------------------------------------------+
| Grants for myuser@localhost                                      |
+----------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'myuser'@'localhost'                       |
| GRANT ALL PRIVILEGES ON `beta_version`.* TO 'myuser'@'localhost' |
+----------------------------------------------------------------------+

y

mysql> SHOW GRANTS FOR 'myuser'@'%';
+-----------------------------------------------------------------------------------------------------------+
| Grants for myuser@%                                                                                   |
+-----------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'myuser'@'%' IDENTIFIED BY PASSWORD '*6ASDFASDFASDF...' 
| GRANT ALL PRIVILEGES ON `myuser`.* TO 'myuser'@'%'                                                
+-----------------------------------------------------------------------------------------------------------+

¿Qué pasó que causó?myuser'para no trabajar en mis scripts PHP y en phpMyAdmin?

Respuestas a la pregunta(2)

Su respuesta a la pregunta