Parece que no puedo recrear un usuario simple que he eliminado, incluso como root en MySQL.
Mi caso: el usuario 'jack' existía antes, pero lo eliminé de mysql.user para recrearlo. No veo vestigios de esto en esa tabla. Si ejecuto este comando para otro nombre de usuario al azar, digamos 'jimmy', funciona bien (al igual que lo hacía originalmente para 'jack').
¿Qué he hecho para corromper al usuario 'jack' y cómo puedo deshacer esa corrupción para recrear 'jack' como un usuario válido para esta instalación de MySQL?
Ver ejemplo a continuación. (Por supuesto, originalmente, hubo mucho tiempo entre la creación de 'jack' y su eliminación.)
mysql> CREATE USER 'jack'@'localhost' IDENTIFIED BY 'test123';
Consultado OK, 0 filas afectadas (0.00 seg)
mysql> select user,host from user;
+------------------+-----------------+
| usuario | host |
+------------------+-----------------+
| root | 127.0.0.1 |
| debian-sys-maint | localhost |
| jack | localhost |
| root | localhost |
| root | russ-elite-book |
+------------------+-----------------+
5 filas en el conjunto (0.00 seg)
mysql> delete from user where user = 'jack';
Consulta OK, 1 fila afectada (0.00 seg)
mysql> select user,host from user;
+------------------+-----------------+
| usuario | host |
+------------------+-----------------+
| root | 127.0.0.1 |
| debian-sys-maint | localhost |
| root | localhost |
| root | russ-elite-book |
+------------------+-----------------+
4 filas en el conjunto (0.00 seg)
mysql> CREATE USER 'jack'@'localhost' IDENTIFIED BY 'test123';
ERROR 1396 (HY000): Operación CREATE USER fallida para 'jack'@'localhost'
mysql> CREATE USER 'jimmy'@'localhost' IDENTIFIED BY 'test123';
Consultado OK, 0 filas afectadas (0.00 seg)
mysql> select user,host from user;
+------------------+-----------------+
| usuario | host |
+------------------+-----------------+
| root | 127.0.0.1 |
| debian-sys-maint | localhost |
| jimmy | localhost |
| root | localhost |
| root | russ-elite-book |
+------------------+-----------------+
5 filas en el conjunto (0.00 seg)