2009-11-03 26 views
17

he iniciado sesión en MySQL ...mysql CREATE USER

mysql -u root -pmypass 

Y he ejecute el siguiente comando para eliminar el usuario de base de datos que funcionó con éxito

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop'; 

entonces puedo añadir un usuario utilizando con éxito el comando siguiente, de nuevo esto funciona con éxito

mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop' IDENTIFIED BY 'mypass'; 

el comando anterior crea un usuario con el anfitrión como un comodín (%) El problema que estoy teniendo es si yo era crear un usuario con el ser anfitrión decir localhost o una IP externa me sale el siguiente error:

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop'; 
mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop'@'localhost' IDENTIFIED BY 'mypass'; 

Query OK, 0 rows affected (0.00 sec) 

ERROR 1396 (HY000): Operation CREATE USER failed for 'myuser_shop'@'localhost' 

¿Alguna sugerencia?

Gracias de antemano

+1

Lo que estás intentando se ve bien para mí. ¿Has echado un vistazo a http://bugs.mysql.com/bug.php?id=28331 para ver si tu problema está descrito allí? – jphofmann

+0

+1 por tu comentario sobre Svetlozar Angelov - ¡resolvió mi problema también! – alfasin

Respuesta

13

Se trata de un informe de errores aquí - http://bugs.mysql.com/bug.php?id=28331

ver si su usuario existe después de la caída.

+0

He comprobado la tabla de "usuario" en la base de datos "mysql" y no hay ninguna referencia a myuser_shop. – Lizard

+5

En realidad, aunque no apareció en la tabla de usuarios, debe haber existido en el archivo db, eliminé específicamente los PRIVILEGIOS DE ESCAPE; DROP USER 'myuser_shop' @ 'localhost'; y el CREATE USER luego trabajó! gracias – Lizard

+0

El comentario de @lizard funcionó para mí. – rmarimon

2

Compruebe las siguientes 2 tablas si el usuario sigue allí después del comando DROP USER: mysql.user y mysql.db.

Borre el usuario de ambos, luego ejecute FLUSH PRIVILEGES y luego puede recrear el usuario.

-1

También debe eliminar manualmente registros de mysql.tables_priv.

+2

Manualmente molestando en el 'mysql. *' Es muy recomendable. – Sammitch

0

caída de usuario nombre de usuario @ localhost '

+0

Debe explicar su respuesta más – Ascherer

0

voy a sugerir que use phpMyAdmin es muy esey no ver con eso.

pasos:

  1. phpmyadmin abierta
  2. ir a la sección de administración
  3. hit en cuenta de usuario complemento
  4. nombre de usuario put y contraseña
  5. privilegios que se

eso es todo ver en acción en youtube [click here]