Recuperar la Contraseña de Root en MySQL
Recuperar la Contraseña de Root en MySQL. Si has olvidado o perdido tu contraseña, en este tutorial te mostramos como recuperar y obtener una nueva password de root de tu servidor de base de datos sea MySQL o MariaDB. Solo necesitas acceso root de SSH. Además recuerda que cuando recuperes tu contraseña no te dará la misma contraseña que tenias anteriormente sino que una nueva. Te tenemos la solución.
Ahora les mostraré en muy pocos pasos cómo acceder al servidor MySQL/MariaDB y actualizar o cambiar tu password de root. Útil para MySQL o MariaDB.
Importante. Los siguientes comandos los debes de ejecutar con privilegios de administración, puedes usar sudo o directamente con root
Paso 1. Ingresar a la Consola o Terminal de MySQL sin Contraseña
Lo primero es averiguar si tenemos instalado MYSQL o MariaDB. Para ello, ejecutaremos:
mysql --version
Te saldrá un mensaje que te servirá para saber si tienes MySQL o MariaDB. En el caso de MariaDB te saldría algo como:
mysql Ver 15.1 Distrib 5.5.56-MariaDB, for Linux (x86_64) using readline 5.1
Para MySQL:
service mysql stop
Para MariaDB:
service mariadb stop
Como ven se ha detenido el servicio y ahora vamos a iniciarlo pero de forma diferente, que de esta forma NO nos pedirá la contraseña:
mysqld_safe --skip-grant-tables & --skip-networking &
Le ponemos skip-grant-tables para que no se pida contraseña y skip-networking para evitar entradas por red externa mientras se está en este estado inseguro de no pedir contraseña. El ampersand & al final se coloca para que el proceso se ejecute en background (en segundo plano) mientras podemos usar la consola.
Puede que requieras teclear Enter para Continuar.
Ahora ingresaremos a la terminal o consola de MySQL con este siguiente comando:
mysql -u root
Como pueden observar NO les ha pedido su password por ahora, pero si pudieron ingresar a la terminal o consola de MySQL. Ahora sí lo que ya había estado esperando, vamos a cambiar la password de root de MySQL
Paso 2. Cambiar o Actualizar la Contraseña de Root de MySQL
Primero vamos a ingresar a la base de datos de MySQL como tal:
USE mysql;
Ahora vamos a cambiar la password:
UPDATE user SET password=PASSWORD("NUEVACONTRASEÑA") WHERE user='root';
Colocas tu nueva contraseña allí en NUEVACONTRASEÑA.
Actualicemos los privilegios con este comando:
flush privileges;
Listo, ya podemos salir de nuestro servidor
quit;
Recuerda guardar tu contraseña o password de root en un lugar seguro.
Paso 3. Iniciar el servidor de Base de Datos (MySQL o MariaDB) normalmente
Bueno ya cambiamos la contraseña del usuario root de MySQL, ahora vamos a detener el servicio de MySQL actual que NO pide contraseña para iniciar el proceso normal (el que SÍ pide password). Para ello, debemos buscar primero el pid del proceso.
Para saber el pid de MySQL:
cat /var/run/mysqld/mysqld.pid
Para saber el pid de MariaDB:
cat /var/run/mariadb/mariadb.pid
El sistema nos lanzará un número de proceso, por ejemplo, el 3390 (puede ser cualquier otro número). Ahora bien, terminamos ese proceso:
kill 3390
Recuerde que en su caso puede que no sea el 3390 sino otro número el que le lance el sistema.
Y ahora sí, después de haber finalizado el proceso de base de datos que No pide password vamos a iniciar el proceso normal de la base de datos:
Para MySQL:
service mysql start
Para MariaDB
service mariadb start
Como puedes ver, la manera de iniciar la base de datos guarda cierta equivalencia con el de detenerlo (ver al principio de este manual).
Paso 4. Probar la nueva contraseña de root de la base de datos.
Hasta aquí ya has recuperado la contraseña al ponerle una nueva. Ahora vamos a probar entrando normalmente con esta nueva password:
mysql -u root -p
Se te pedirá la nueva clave, la pones, y listo, deberías ya estar dentro. Felicidades!!!
Hemos culminado y espero que les haya sido de su gusto. Ahora podrán tomar el control y realizar lo que deseas en tu propio servidor de base de datos. Recuerden que Fututel ofrece Hosting especializado de VPSs con acceso total a root y MYSQL/MariaDB.
Dios los bendiga! Y espero sus comentarios abajo :).