Al intentar asignar permisos a un usuario inexistente en MySQL8, este responde con un error un tanto ambiguo y sin sentido, en este artículo veremos que creando el usuario antes de asignar los grants resuelve el problema.
El error en cuestión es el siguiente:
GRANT ALL ON test.* TO test_user@'%';
ERROR 1410 (42000): You are not allowed to create a user with GRANT
Creamos el usuario y comprobamos que deja asignar los permisos sin problema:
CREATE USER test_user@'%' IDENTIFIED BY 'PASSWORD';
GRANT ALL ON test.* TO test_user@'%';