Hoy veremos como se puede recuperar y cambiar la contraseña de root del servidor de bases de datos MySQL. Este es un rapido procedimiento el cual funciona en Linux con los siguientes cinco pasos:
MySQL: Pasos para resetear la contraseña de root
1: Detener el proceso del servidor
Antes de iniciar el proceso de recuperacion de la clave de root es necesario bajar todos los servicios de la base de datos:
root@servidor-ubuntu:~# /etc/init.d/mysql stop * Stopping MySQL database server mysqld [ OK ] root@servidor-ubuntu:~#
2: Iniciar el servicio/demonio (mysqld) sin contraseña
Cuando vamos a reiniciar el motor de base de datos utilizamos la opcion –skip-grant-tables asi no nos pedira la contraseña.
root@servidor-ubuntu:~# mysqld_safe --skip-grant-tables & [1] 10702 root@servidor-ubuntu:~# nohup: ignoring input and redirecting stderr to stdout
Starting mysqld daemon with databases from /var/lib/mysql mysqld_safe[10741]: started
3: Conectar al servidor MySQL como el usuario root
Ahora que ya hemos realizamo el paso 2, podemos conectarnos al servidor con el usuario root y no tendremos que ingresar la contraseña. Esto es un paso temporal necesario para cambiar la contraseña anterior de root.
root@servidor-ubuntu:~# mysql -u root Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 1 Server version: 5.0.51a-3ubuntu5.4 (Ubuntu) Type 'help;' or 'h' for help. Type 'c' to clear the buffer. mysql>
4: Configure la nueva contraseña de root
En este paso ya es posible actualizar la contraseña de root por una nueva:
mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> update user set password=PASSWORD("321") where User='root'; Query OK, 3 rows affected (0.03 sec) Rows matched: 3 Changed: 3 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.01 sec)
5: Salir y reiniciar el servidor
Ya que hemos cambiado la contraseña, tan solo es necesario salir de la interfaz para utilizar la nueva contraseña de administrador.
mysql> quit Bye root@servidor-ubuntu:~# /etc/init.d/mysql stop * Stopping MySQL database server mysqld STOPPING server from pid file /var/run/mysqld/mysqld.pid mysqld_safe[11414]: ended [ OK ] [1]+ Done mysqld_safe --skip-grant-tables
6: Reinicio de MySQL
Y eso es todo. En este ultimo paso tan solo nos queda reiniciar el proceso de la base de datos en Linux y nuestra nueva contraseña estara cambiada.
root@servidor-ubuntu:~# /etc/init.d/mysql start * Starting MySQL database server mysqld [ OK ] * Checking for corrupt, not cleanly closed and upgrade needing tables. root@servidor-ubuntu:~# mysql -u root -p
Muy buen aporte, la verdad me ayudo mucho, muchas gracias
Maravilloso!
No tenia muchas esperanzas de que me fuese a funcionar, pero lo ha hecho!
Muchas Gracias shurmano!;D
Hola, yo tengo el mismo problema pero cuando ingreso el comando mysqld_safe –skip-grant-tables & se queda pensando, y no hay resultado alguno, cuánto tiempo tengo q esperar?????
Teclea enter.
Que excelente que esta esto!!! muchas gracias.
Muy buen articulo, al grano y util!
Dios los bendiga
A ti muchas gracias por tus buenos deseo.
Excelente!…. muy bueno…. yo cheque otros tutoriales y no me funcionaron y este resolvio el conflicto… muchas gracias por compartir el dato, solo tengo una curiosidad cuando inicio y detengo servicios no aperece * Starting MySQL database server mysqld [ OK ]
m aparece una gran leyenda… no se si es por la version o no se… pero nunca habia aparecido antes pero si funciona.
Podrias copiar la leyenda que te aparece, solo para estar seguros?
Muy buen aporte… se necesita bastante para los nuevos usuarios de Linux. un 10. gracias.
Gracias !! me salvaste, tenia que terminar un trabajo de la universidad y no podia avanzar sin la contraseña del mysql, wow soy el primero en comentar desde hace mas de un año XD. Por cierto muy bien explicado, te felicito.
Gracias! Muy bueno! Excelente! Me ayudo bastante.