¿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_password
Siga 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.
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
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-table
arena --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#@!';
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.