Restaurar el root luego de borrado accidental:
1) Parar el servicio mysql (Entrar en services.msc y parar el servicio).
2) Iniciar mysql desde línea de comandos con la opción –skip-grant-tables:
3) Abrimos otra consola, y nos conectamos al mysql con el usuario que dispongamos, pero sin password:
4) Seleccionamos la base de datos mysql:
5) Añadimos un nuevo superusuario llamado root2, de este modo creamos un ususario con todos los privilegios, a través del cual otorgaremos de nuevo los privilegios al usuario root:
Código MySQL:
Ver originalINSERT INTO user VALUES('localhost', 'root2', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', '0', '0', '0');
6) Paramos el servicio mysqld –skip-grant-tables, podemos matarlo desde el taskmanager y arrancamos el servicio mysql de forma normal.
7) Accedemos con el nuevo superusuario (no tiene clave):
8) Creamos el root nuevamente y asignamos los permisos necesarios:
Código MySQL:
Ver originalmysql
>INSERT INTO user VALUES('localhost', 'root', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', '0', '0', '0');
9) Recargamos los privilegios:
10) Salimos, cargamos nuevamente, pero con el usuario root y eliminamos el usuario root2:
Si funciona, tener en cuenta que NO SE DEBE BORRAR JAMÁS AL ROOT NI MODIFICAR SUS PERMISOS.