# MariaDB Change User Password: cómo cambiar contraseñas en MariaDB

`SET PASSWORD` es un comando de MariaDB que te permite cambiar la contraseña de un usuario existente. Con él puedes gestionar de forma segura las credenciales de acceso y reforzar la seguridad de tu sistema. Cambiar la contraseña en MariaDB es recomendable en diferentes situaciones, ya sea al crear nuevos usuarios, al detectar un acceso sospechoso o como parte de una política de seguridad periódica.

## ¿Cuándo deberías cambiar la contraseña de un usuario en MariaDB?

Cambiar la contraseña de un usuario en [MariaDB](https://www.ionos.mx/digitalguide/servidores/know-how/que-es-mariadb/) es una parte fundamental de la estrategia de seguridad de cualquier entorno de base de datos. Debes modificarla siempre que exista un motivo concreto o cuando lo indiquen las políticas de seguridad. Por ejemplo, si un usuario **abandona la empresa o pasa a desempeñar otro rol**, es imprescindible actualizar o desactivar de inmediato todas las credenciales asociadas. Asimismo, si detectas comportamientos sospechosos, como intentos de inicio de sesión inusuales o accesos a datos sensibles, resulta necesario un cambio inmediato de contraseña.

También conviene cambiarlas si se hacen públicas por error. Esto puede deberse a una configuración incorrecta, a un script enviado por equivocación o a su publicación en un sistema de control de versiones. En estos casos, un cambio rápido protege frente a accesos no autorizados. Además, muchos estándares de seguridad recomiendan la **rotación periódica de contraseñas**, por ejemplo, cada 90 días, especialmente en entornos críticos.

En definitiva, cambia las contraseñas siempre que exista un riesgo y no esperes a que aparezca un problema.

## `SET PASSWORD` en MariaDB

Con el comando `SET PASSWORD` puedes cambiar la contraseña de los usuarios en MariaDB. Si no incluyes la **cláusula `FOR`**, la modificación afecta al usuario que está conectado en ese momento. En cambio, si usas `FOR 'user'@'host'`, la instrucción se dirige a una cuenta concreta. Para ello necesitas el permiso `UPDATE` sobre la base de datos `mysql`, ya que es ahí donde MariaDB gestiona la información de usuarios.

La sintaxis general es:

```sql
SET PASSWORD FOR 'user'@'host' = PASSWORD('newpassword');
```

En las versiones actuales de MariaDB (a partir de la 10.4), se recomienda establecer la contraseña directamente en texto plano mediante `ALTER USER`:

```sql
ALTER USER 'user'@'host' IDENTIFIED BY 'newpassword';
```

El motivo de este cambio es que la función anterior genera un hash interno y solo es compatible con ciertos **plugins de autenticación basados en contraseña**, como `mysql_native_password`, `ed25519` o `mysql_old_password`. Otros plugins, como `unix_socket`, `pam`, `gssapi` o `named_pipe`, no almacenan contraseñas en la base de datos, por lo que el uso de `SET PASSWORD` en esos casos genera un error.

## MariaDB Change User Password: cómo cambiar la contraseña de un usuario

Puedes cambiar la contraseña de un usuario directamente desde el cliente de MariaDB. Para ello, primero debes conectarte al servidor mediante **SSH**.

Abre una sesión SSH e inicia sesión en tu servidor. Para arrancar el **cliente MariaDB** con permisos de administrador, introduce:

```bash
sudo mysql
```

Tras ingresar la contraseña de tu usuario SSH, tendrás acceso a la interfaz de MariaDB. Allí verás un prompt como:

```sql
MariaDB [(none)]>
```

Para gestionar las contraseñas de usuario, necesitas seleccionar la base de datos que contiene esta información. En MariaDB, por defecto, se trata de la base de datos `mysql`. Cámbiala con:

```sql
use mysql;
```

Ahora ya puedes cambiar la contraseña del usuario deseado. Escribe el siguiente comando:

```sql
SET PASSWORD FOR 'newuser'@'host' = PASSWORD('newsecurepassword');
```

Sustituye `newuser` por el nombre real del usuario y `newsecurepassword` por la nueva contraseña.

Tras la actualización, MariaDB confirmará la operación con un mensaje.

Cuando hayas terminado, sal del cliente de MariaDB con:

```sql
exit
```

Así volverás a la consola normal del servidor.

Si gestionas usuarios que acceden con contraseña, `SET PASSWORD` en MariaDB sigue siendo una herramienta útil. Permite reaccionar rápidamente ante incidentes de seguridad, aplicar contraseñas nuevas o asegurar el acceso tras un cambio de rol.


This is a markdown version of: [https://www.ionos.mx/digitalguide/hosting/cuestiones-tecnicas/mariadb-change-user-password/](https://www.ionos.mx/digitalguide/hosting/cuestiones-tecnicas/mariadb-change-user-password/) for AI/LLM consumption.