Cómo restablecer la contraseña de root en MySQL 8.0

Cómo restablecer la contraseña de root en MySQL 8.0

En un caso desafortunado de olvidar o perder su contraseña de root de MySQL, seguramente necesitará una forma de recuperarla de alguna manera. Lo que necesitamos saber es que la contraseña se almacena en la tabla de usuarios. Esto significa que necesitamos encontrar una manera de eludir la autenticación MySQL, para que podamos actualizar el registro de contraseña.

Afortunadamente, es fácil de lograr y este tutorial lo guiará a través del proceso de recuperación o restableciendo la contraseña de root en la versión MySQL 8.0.

Según la documentación de MySQL, hay dos formas de restablecer la contraseña de root de MySQL. Revisaremos ambos.

Restablecer la contraseña raíz de MySQL usando –init-file

Una de las formas de restablecer la contraseña raíz es crear un archivo local y luego iniciar el servicio MySQL usando–init-file como se muestra.

# vim/home/user/init-file.txt

Es importante asegurarse de que el usuario de mysql pueda leer el archivo. Dentro de ese archivo pegue lo siguiente:

ALTER USER ‘root’ @ ‘localhost’ IDENTIFIED BY ‘new_password’; freestar.config.enabled_slots.push

En lo anterior, cambie “ new_password. por la contraseña que desea utilizar.

 Crear archivo con Nueva contraseña raíz de MySQL  Crear archivo con nueva contraseña de raíz de MySQL Crear archivo con nueva MySQL Contraseña de root

Ahora asegúrese de que el servicio MySQL esté detenido. Puede hacer lo siguiente:

# systemctl stop mysqld.service # para distribuciones usando systemd #/etc/init.d/mysqld stop # para distribuciones usando init

Luego ejecute lo siguiente:

# mysqld–user = mysql–init-file =/home/user/init-file.txt–console

Esto iniciará el servicio MySQL y durante el proceso ejecutará el archivo init que ha creado y por lo tanto se actualizará la contraseña del usuario root. Asegúrese de eliminar el archivo una vez que se haya restablecido la contraseña.

 Restablecer contraseña raíz de MySQL  Restablecer contraseña raíz de MySQL Restablecer la contraseña raíz de MySQL

Asegúrese de detener el servidor e iniciarlo normalmente después de eso.

# systemctl stop mysqld.service # para distribuciones usando systemd # systemctl restart mysqld.service # para distribuciones usando systemd #/etc/init.d/mysqld stop # para distribuciones que usan init #/etc/init.d/mysqld restart # para distribuciones que usan init

Ahora debería poder conectarse al servidor MySQL como root usando la nueva contraseña .

# mysql-u root-p  Conectarse a MySQL con una nueva contraseña raíz  Conectarse a MySQL con una nueva contraseña de root Conectarse a MySQL con una nueva contraseña de root

Restablecer la contraseña de root de MySQL usando –skip-grant-tables

La segunda opción que tenemos es iniciar el servicio MySQL con-Opción skip-grant-tables. Esto es menos seguro ya que mientras el servicio se inicia de esa manera, todos los usuarios pueden conectarse sin contraseña.

Si se inicia el servidor–skip-grant-tables, la opción para–skip-networking se activa automáticamente activado para que las conexiones remotas no estén disponibles.

Primero asegúrese de que el servicio MySQL esté detenido.

# systemctl stop mysqld.service # para distribuciones que usan systemd #/etc/init.d/mysqld stop # para distribuciones que usan init

Luego, inicie el servicio con la siguiente opción.

# mysqld-skip-grant-tables–user = mysql &

Luego, puede conectarse al servidor mysql simplemente ejecutándolo.

# mysql

Dado que la administración de cuentas está deshabilitada cuando el servicio se inicia con-opción skip-grant-tables, tendremos que recargar las subvenciones. De esa forma podremos cambiar la contraseña más tarde:

# FLUSH PRIVILEGES;

Ahora puede ejecutar la siguiente consulta para actualizar la contraseña. Asegúrese de cambiar “new_password” con la contraseña real que desea utilizar.

# ALTER USER ‘root’ @ ‘localhost’ IDENTIFICED BY ‘new_passowrd’;  Restablecer la contraseña de root en MySQL 8  Reset Root Password en MySQL 8 Reset Root Password en MySQL 8

Ahora detenga el servidor MySQL e inícielo normalmente.

# systemctl stop mysqld.service # para distribuciones usando systemd # systemctl restart mysqld.service # para distribuciones usando systemd #/etc/init.d/mysqld stop # para distribuciones usando init #/etc/init.d/mysqld restart # para distribuciones que usan init

Debería poder conectarse con su nueva contraseña.

# mysql-u root-p  Inicie sesión en MySQL con una nueva contraseña raíz  Inicie sesión en MySQL con una nueva contraseña raíz Inicie sesión en MySQL con una nueva contraseña raíz

Es posible que también le guste leer estos útiles artículos relacionados con MySQL.

  1. Cómo instalar MySQL 8 en CentOS, RHEL y Fedora
  2. 15 Consejos útiles de optimización y ajuste del rendimiento de MySQL
  3. 12 Prácticas de seguridad de MySQL para Linux
  4. 4 útiles herramientas de línea de comandos para monitorear el rendimiento de MySQL
  5. Comandos de administración de la base de datos MySQL

Conclusión

En este artículo aprendió cómo restablecer la contraseña de root perdida para MySQL 8.0 servidor. Espero que el proceso haya sido sencillo.