Tutoriales

Cómo restablecer la contraseña de root en MySQL 8 en Ubuntu Linux

¿Olvidaste tu almohadilla de datos MySQL? root ¿Contraseña de usufructuario? ¡No te preocupes! Esta enseñanza paso a paso explica cómo restablecer la contraseña de root en MySQL 8 en Ubuntu 20.04.

Nota: Como ya sabrá, el usufructuario root de MySQL está usando auth_socket Complemento para la autenticación con el servidor MySQL en sistemas Ubuntu con MySQL 5.7 y versiones posteriores. Para que pueda iniciar sesión en el servidor MySQL como root Agraciado con sudo mysql Comando siempre que sepa el del usufructuario de su sistema sudo Contraseña. En este caso no es necesario ejecutar MySQL root Contraseña. Si ya has cambiado eso Método de autenticación para raíz MySQL Agraciado ya sea caching_sha2_password o mysql_native_passwordSiga los pasos a continuación para restablecer ese root Contraseña de la almohadilla de datos MySQL.

Restablecer la contraseña de root en MySQL 8 en Ubuntu Linux

1. Primero detenga el servicio MySQL con el comando:

$ sudo systemctl stop mysql

Esto detendrá el servicio MySQL si se está ejecutando. Puede confirmar el estado del servicio MySQL con el futuro comando:

$ sudo systemctl status mysql

Salida de muestra:

● mysql.service - MySQL Community Server
      Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
      Active: inactive (dead) since Mon 2021-05-31 11:01:15 UTC; 1min 15s ago
     Process: 1446 ExecStart=/usr/sbin/mysqld (code=exited, status=0/SUCCESS)
    Main PID: 1446 (code=exited, status=0/SUCCESS)
      Status: "Server shutdown complete"
 May 31 07:57:50 ubuntu2004.localdomain systemd[1]: Starting MySQL Community Server…
 May 31 07:57:51 ubuntu2004.localdomain systemd[1]: Started MySQL Community Server.
 May 31 11:01:14 ubuntu2004.localdomain systemd[1]: Stopping MySQL Community Server…
 May 31 11:01:15 ubuntu2004.localdomain systemd[1]: mysql.service: Succeeded.
 May 31 11:01:15 ubuntu2004.localdomain systemd[1]: Stopped MySQL Community Server.
Detenga el servicio MySQL

2. A continuación, inicie el servidor MySQL sin confirmar la autorización. Para hacer esto, haga lo futuro:

$ sudo systemctl edit mysql

Esto abre el mysql systemd Archivo de configuración de su editor de texto tipificado. En mi caso es nano Editor.

Agrega las siguientes líneas:

[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --skip-grant-tables --skip-networking
Edite el archivo de configuración de mysql systemd
Edite el archivo de configuración de mysql systemd

Luego de unir las líneas de hacia lo alto, presione CTRL+O y ENTER para seguir el archivo, luego presione CTRL+X para cerrarlo.

Aquí el --skip-grant-tables Esta opción le permite conectarse al servidor de la almohadilla de datos MySQL sin contraseña y con todos los permisos. Por otra parte, se desactivan los extractos de cuenta, como ALTER USER y SET PASSWORD. Y el --skip-networking La opción se utiliza para evitar que los otros clientes se conecten al servidor de la almohadilla de datos. Oportuno a que todas las conexiones remotas están deshabilitadas, nadie de los clientes remotos puede penetrar al servidor de la almohadilla de datos hasta que reinicie el servidor de la almohadilla de datos normalmente.

3. Recargar systemd Configuración con comando:

$ sudo systemctl daemon-reload

4. Inicie el servicio MySQL:

$ sudo systemctl start mysql

Esto inicia el servidor MySQL con --skip-grant-tablearena --skip-networking Opciones. Puede confirmar esto verificando el estado del servicio MySQL:

$ sudo systemctl status mysql
 ● mysql.service - MySQL Community Server
      Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Drop-In: /etc/systemd/system/mysql.service.d
              └─override.conf
      Active: active (running) since Mon 2021-05-31 11:39:18 UTC; 1min 23s ago
     Process: 1882 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
    Main PID: 1905 (mysqld)
      Status: "Server is operational"
       Tasks: 36 (limit: 2280)
      Memory: 331.0M
      CGroup: /system.slice/mysql.service
              └─1905 /usr/sbin/mysqld --skip-grant-tables --skip-networking
 May 31 11:39:16 ubuntu2004.localdomain systemd[1]: Starting MySQL Community Server…
 May 31 11:39:18 ubuntu2004.localdomain systemd[1]: Started MySQL Community Server.

5. Ahora conéctese al servidor MySQL como root Agraciado sin contraseña:

$ sudo mysql -u root

Inmediatamente se le dirigirá al indicador de shell de MySQL.

Welcome to the MySQL celador.  Commands end with ; or g.
Your MySQL connection id is 10
Server version: 8.0.25-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> 

6. Iniciamos sesión en el servidor de la almohadilla de datos sin cargar tablas de subvenciones (porque --skip-grant-tables Posibilidad). Entonces no podemos usarlo ALTER USER Comando que necesita para restablecer la contraseña. Para cargar tablas de subvenciones, ejecute el futuro comando en el indicador de shell de MySQL:

mysql> FLUSH PRIVILEGES;

7. A continuación, ejecute uno de los siguientes comandos para restablecer MySQL root Contraseña.

Si utiliza caching_sha2_password Complemento, ejecute:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'Password123#@!';
Restablecer la contraseña de root en MySQL 8 en Ubuntu Linux
Restablecer la contraseña de root en MySQL 8 en Ubuntu Linux

Cuando usas mysql_native_password Complemento, ejecute lo futuro en su área:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password123#@!';

Reemplazar Password123#@! contigo mismo.

Luego de cambiar MySQL root Contraseña, salga del indicador de shell de MySQL:

mysql> exit

8. Restablecer los cambios systemd Configuración de nuevo a la configuración frecuente con el comando:

$ sudo systemctl revert mysql

Esto eliminará todos los archivos modificados.

Removed /etc/systemd/system/mysql.service.d/override.conf.
Removed /etc/systemd/system/mysql.service.d.

9. Recargar systemd Configuración para aplicar los cambios:

$ sudo systemctl daemon-reload

10. Finalmente reinicie el servidor MySQL normalmente:

$ sudo systemctl restart mysql

11. Ahora debería poder conectarse a la almohadilla de datos MySQL como root Usuarios con new password usando el comando:

$ mysql -u root -p

Introducir el root Contraseña para penetrar al indicador de shell de MySQL:

mysql> 

Incluso hay otra forma de cambiar MySQL root Contraseña de Linux. Es un poco diferente a este método. Si está interesado, consulte el enlace a continuación:

>> How To Reset MySQL Root User Password In Linux

Conclusión

Como puede ver, ¡restablecer la contraseña de root de MySQL es practicable! Si ha seguido los pasos anteriores cuidadosamente, podrá recuperar la contraseña raíz de su almohadilla de datos MySQL en minutos. No lo vuelvas a perder. Anote su contraseña o guárdela en un área seguro.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba