jueves, 3 de diciembre de 2009

Cambiar contraseña de "root" en MySQL

Recientemente me he encontrado con un problema en un servidor que estoy instalando, y es que olvidé la contraseña de "root" con la que configuré MySQL. Si, ya se que suena extraño... pero en mi afán por buscar una contraseña "dificil" acabé haciendola "imposible" para mi... por suerte encontré un procedimiento que me permitió generar una nueva contraseña y recuperar la instalación.

El procedimiento lo localicé en
http://www.geekpedia.com/KB105_How-to-reset-your-MySQL-root-password-under-Windows.html
pero paso a traducirlo para los no "angloleyentes". Son pasos muy sencillos. El proceso lo realicé con Windows 2003 Server y MySQL 5.1

1. Para el servicio MySQL. Esto lo puedes hacer a través del menú Inicio -> herramientas administrativas -> Servicios. Busca el servicio MySQL y páralo.

2. Abre una ventana de MS-Dos. Busca la carpeta "bin" en la ruta de instalación de MySQL (en mi caso estaba en Archivos de Programa\MySQL, pero puedes haber decidido poner otra ruta).

3. Una vez en la carpeta "bin", ejecuta el siguiente comando: mysqld.exe -u root --skip-grant-table. El cursor se quedará esperando, no te preocupes, es correcto este paso.

4. Deja la ventana tal y como está, y abre una nueva consola de MS-Dos. Vuelve a buscar la ruta del directorio "bin" de tu instalación de MySQL.

5. Ejecuta "mysql" y entrarás al entorno MySQL para ejecutar órdenes.

6. Escribe "use mysql;" para cambiar a la base de datos "mysql".

7. Llega el momentazo. Es la hora de ejecutar el siguiente comando

UPDATE user SET Password = PASSWORD('NUEVO_PASSWORD') WHERE User = 'root';

¡Ya está! con esto cambiamos el password de nuestro usuario root. Ya hemos recuperado nuestra instalación de MySQL.

Después de todo esto, podemos cerrar la primera ventana y teclear "exit;" en la segunda para que se finalice la conexión que tenemos abierta.

Una vez finalizado el proceso, podemos rearrancar el servicio MySQL. Si no responde o se queda colgado, reinicia el servidor (a mi me funcionó así).

Un saludo y suerte!!