Cambiar la clave de root en un servidor MySQL o MariaDB

Al instalar un servidor MySQL o MariaDB, es probable que hayamos ejecutado mysql_secure_installation para establecer la configuración básica de seguridad. Si en algún momento futuro nos vemos ante la necesidad de cambiar la clave de root, podremos usar las instrucciones que compartiremos en este post y en el siguiente.Cambiar la clave de root en MySQL o MariaDBSi no lo hemos hecho todavía, es sumamente importante que ejecutemos mysql_secure_installation cuanto antes. De otra manera, cualquier persona podrá conectarse al servidor como root sin necesidad de ingresar una contraseña.

Cambiar la clave de root

Pensemos en el siguiente escenario. Puede ser que el administrador haya cambiado de rol o haya sido despedido (¡y quizás se fue enojado!). En ese caso querremos cambiar la clave del usuario root de la base de datos de manera inmediata. Nos encontraremos ante una de las siguientes situaciones:

  1. Conocemos la contraseña actual y queremos resetearla
  2. NO conocemos la contraseña actual

En este post abordaremos el primer caso y dejaremos el segundo para el próximo.

Cambiar la contraseña de root cuando conocemos la clave actual

Primero que nada, asegurémonos que el servicio mariadb esté ejecutándose:

systemctl is-active mariadb

Si el comando anterior no devuelve la palabra active, necesitaremos iniciar el servicio antes de proseguir:

systemctl start mariadb

A continuación, iniciaremos sesión en el servidor de bases de datos como root:

mysql -u root -p

Por motivos de compatibilidad entre distintas versiones, utilizaremos el siguiente comando para actualizar la tabla user dentro de la base de datos mysql. Tengamos en cuenta que tendremos que cambiar MiClaveAqui por la contraseña que hayamos elegido:

USE mysql;
UPDATE user SET password=PASSWORD('MiClaveAqui') WHERE User='root' AND Host = 'localhost';
FLUSH PRIVILEGES;

El próximo paso consistirá en salir de la sesión actual al escribir

exit

y presionar Enter para luego verificar que podamos conectarnos al servidor con nuestra nueva contraseña.

Otra alternativa posible para cambiar la clave de root en este caso es ejecutar nuevamente mysql_secure_installation.

Espero que este post les haya resultado útil. ¡No se pierdan el próximo!