Cómo cambiar el password del usuario root de MySQL por terminal

Conozco algún que otro administrador que ha olvidado el password del root de MySQL, ¿esto puede ser un verdadero inconveniente no?

Imaginen que necesitan crear una nueva base de datos, hacer cualquier cosa y no pueden pues no recuerdan el password del administrador (root) del servidor MySQL, un verdadero problema.

Aquí les mostraré cómo acceder al servidor MySQL por la terminal SIN poner password de root, para una vez dentro que puedan cambiar el password de root.

Artículo relacionado:
Comprobar tablas de una base de datos MySQL y reparar corruptas

Lo primero será detener el servicio mysql:

Los siguientes dos comandos deben ser ejecutados con privilegios de administración, bien poniendo sudo al inicio del comando o ejecutándolos directamente como root

service mysql stop

Esto detuvo el servicio, ahora vamos a iniciarlo pero de forma diferente, una forma que no nos pedirá password luego:

mysqld_safe --skip-grant-tables &

Listo, ahora accedamos a la terminal de MySQL:

mysql -u root

Verán que no les pidió password, verán que ya entraron a la consola o terminal de MySQL y pueden hacer lo que les plazca, procedamos a cambiar el password del root de MySQL.

Primero entraremos a la base de datos de MySQL como tal:

use mysql;

Luego, cambiemos el password:

update user set password=PASSWORD("ElNuevoPassword") where user='root';

Ahora refresquemos los privilegios:

flush privileges;

Y por último salimos:

quit;

Listo, ya cambiamos el password del usuario root de MySQL, ahora vamos a detener el servicio e iniciarlo como debe ser:

service mysql stop

service mysql start

Fin

Esto es todo, ya recuperaron el control de su propio servidor MySQL


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   firecold dijo

    Muy buen tip, gracias

  2.   Chaparral dijo

    ¡Excelente, genial!

  3.   FIXOCONN dijo

    a esperar que me ocurra para probarlo, nada buen tips

  4.   CrisXuX dijo

    Excelente

  5.   Gustavo Londono L dijo

    muy buen articulo, un abrazo!!

  6.   Ricardo dijo

    Muy útil, me acabas de sacar de un apuro. Gracias.

  7.   pepe dijo

    Muy util, me sacaste de un apuro, gracias!

  8.   Jose dijo

    Esta solución me ha funcionado muchas veces, pero ahora tengo un motor mysql recien instalado y trate de establecer la contraseña, sin embargo me indica que el campo «password» no existe, verifique la estructura y verdaderamente el campo no existe. Alguna idea de como solucionarlo?

  9.   Ignacio farre dijo

    Mil gracias, me has salvado pudiendo recuperar el control de mi mysql…

  10.   david dijo

    me funciono de diez mil gracias.

  11.   javierfdez dijo

    Pues me has solucionado mi problema. Gracias!

  12.   freval dijo

    Los ultimos 4 pasos hacen la diferencia muchas gracias

  13.   FuzzJS dijo

    Gracias me funciono muy bien sin embargo tuve un error despues del primer comando con el siguiente mensaje:

    mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists

    Creando el directorio se soluciono el problema y pude completar el cambio de password comparto los comandos por si a alguien le pasa.

    mkdir -p /var/run/mysqld
    chown mysql:mysql /var/run/mysqld

  14.   ANA JULIA dijo

    Demasiado bueno

  15.   Giusseppe dijo

    Muchas gracias por el artículo.
    Me sirvió para recuperar las bases de datos de prueba de una raspberry pi en la que tengo instalado un LAMP server desde hace tiempo.