Cambiar el password de root de Mysql en centOS y RHEL

Por si alguna vez les pasa, si pierden el acceso al root de mysql el proceso de reseteo es sencillo y rápido.
Teniendo acceso al root del servidor mediante ssh, lo primero que hay que realizar es un stop al servicio de Mysql

# service mysql stop

Al estopear mysql nos aseguramos de que permita el cambio, caso contrario no nos dejará modificarlo.

Iniciamos luego el modo seguro de mysql:

# mysqld_safe --skip-grant-tables --skip-networking

Donde:
–skip-grant-tables causa que el servidor no use el sistema de privilegios lo que le da acceso ilimitado a todas las bases de datos a todos los usuarios de la base de datos. NOTA: Si MySQL fue configurado y compilado con la opción ‘–disable-grant-options’ entonces lo anterior no funcionará y no hay mucho que se pueda hacer entonces y no se podrá cambiar la contraseña, aunque en la práctica realmente esta opción casi no se usa.
–skip-networking deja de escuchar (LISTEN) conexiones TCP/IP provenientes de la red, es decir MySQL trabajaría en un ambiente totalmente local.

1) Entramos a mysql:

# mysql -u root

Al no estar presentes los privilegios, no nos pedirá password

2) Usamos la base de datos del sistema mysql

mysql> use mysql;

3) Vamos a hacer el cambio final:

mysql> UPDATE user SET password=PASSWORD('nuevo_pass') WHERE user='root';
Query OK, 1 rows affected (0.07 sec)
Rows matched: 1  Changed: 1  Warnings: 0

4) Salimos de Mysql finalizando el proceso:

mysql> exit
Bye
#

5) Para que tome el cambio bastará con reiniciar el servicio:

# service mysql restart

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.