Métodos de pago Abuse

Cambiar la contraseña de usuario en MySQL

10.10.2022, 21:52

Cuando se trabaja con MySQL DBMS, es extremadamente importante saber cómo cambiar la contraseña de usuario. Parece que esta tarea se puede resolver sólo si tiene derechos de superusuario. Pero incluso un usuario normal puede cambiar la contraseña bajo ciertas circunstancias. En este artículo le diremos cómo hacerlo en circunstancias normales.

Cambiar la contraseña de un usuario en MySQL DBMS

Puede cambiar la contraseña de un usuario de diferentes maneras. En el entorno MySQL, hay dos comandos para esta tarea - SET PASSWORD y ALTER USER. Vamos a hablarte de cada uno de estos dos métodos en detalle.

Averigüemos la versión de MySQL

A principios de este año, MySQL tiene dos versiones principales. La primera es obsoleta pero aún soportada (es la versión 5.7), y la más actual en este momento es la versión 8.0. ¿Cómo averiguar la versión de MySQL? Puedes hacerlo con un comando especial, que debe ejecutarse en el terminal:

$ mysql –version

Узнаем версию MySQL

Como se puede ver en la imagen de arriba, se utiliza la versión 8.0.28, pero es importante tener en cuenta que ALTER USER es relevante sólo en versiones anteriores de MySQL.En versiones más recientes, puede utilizar ambas versiones.

Cómo entrar en la consola

Para entrar en la consola, debe iniciar sesión en MySQL con su nombre de usuario y contraseña. Cuando un usuario ya está autorizado en el servidor, debe realizar todas las acciones en su nombre. Cuando se utiliza MySQL por primera vez, debe utilizar privilegios de root.

El comando para iniciar sesión como root:

$ mysql -u root –p

Как зайти в консоль

Después de eso, una solicitud de contraseña se producirá. Queda por introducir la contraseña, pulse la tecla Enter, inmediatamente después de que se cargará la interfaz de MySQL con todos los comandos disponibles.

Visualización de hosts

La peculiaridad de MySQL es que tiene un host separado al que está vinculada una cuenta. Veamos los tres hosts principales:

  • Localhost;
  • %;
  • Dirección IP/nombre de dominio.

Localhost sólo permite el inicio de sesión local sin conectividad remota, % significa que la cuenta puede utilizarse desde cualquier host, dirección IP/nombre de dominio significa que la cuenta sólo puede utilizarse en el nombre de dominio/dirección IP seleccionados.

Para averiguar el tipo de host de la cuenta tenemos que ejecutar la siguiente consulta SQL:

$ SELECT user, host FROM mysql.user

Просмотр хостов

En la captura de pantalla anterior, podemos ver que el usuario alex tiene un host de %. Este host se debe utilizar al cambiar la contraseña. Los usuarios en MySQL y toda la información sobre los usuarios se almacenan en la base de datos mysql en la tabla user.

Cambiando la contraseña usando SET PASSWORD

También puede cambiar la contraseña con el comando SET PASSWORD. Para cambiar la contraseña del usuario alex con host % a somepassword666 necesitas usar el siguiente comando:

$ SET PASSWORD FOR 'alex'@'%' = 'somepassword666';

Меняем пароль с помощью SET PASSWORD

Cambio de contraseña con ALTER USER

Puedes cambiar la clave del usuario usando otro comando - ALTER USER. Para cambiar la contraseña del usuario alex con host % por otrapassword666 ejecutaremos una consulta SQL:

$ ALTER USER 'alex'@'%' IDENTIFIED BY 'anotherpassword666';

Меняем пароль с помощью ALTER USER

Tenga en cuenta que el nombre de usuario y el host están entre comillas simples, sin estas comillas MySQL no será capaz de reconocer la cadena.

Ahora restablece la caché de privilegios:

$ FLUSH PRIVILEGES;

Cómo verificar la nueva contraseña

Una vez que haya cambiado la contraseña, cambiado el privilegio y restablecido la caché, debe realizar una verificación de inicio de sesión como el usuario cuya contraseña fue cambiada.

Salga del shell de MySQL ejecutando el comando exit:

$ exit

Как проверить новый пароль

Ahora inicie sesión en el shell:

$ mysql -u alex -p

Как проверить новый пароль

Si ve el prompt del sistema mientras inicia sesión, es que ha hecho todo correctamente, lo que significa que la contraseña ha sido cambiada con éxito.