Introducción
Si nunca ha establecido una contraseña de root en su base de datos MySQL, debería poder conectarse a ella. Sin embargo, esta no es una buena práctica de seguridad ya que cualquiera puede acceder a su base de datos.
Si su base de datos tiene una contraseña raíz, pero la perdió, esta guía lo ayudará a restablecer una contraseña raíz de MySQL en Linux y Windows .
Requisitos previos
- Una base de datos MySQL existente
- Acceso a un servidor Linux o Windows con MySQL
- Privilegios de administrador en la computadora que aloja la base de datos MySQL
- Un editor de texto. El Bloc de notas se incluye de forma predeterminada en Windows. Vim está instalado de forma predeterminada en Linux.
- Acceso a una interfaz de línea de comandos (o terminal)
Cómo cambiar la contraseña raíz del usuario de MySQL en Linux
Paso 1:Inicie sesión como usuario de MySQL
Cuando inicie su instalación de Linux, asegúrese de haber iniciado sesión como el mismo usuario que normalmente ejecuta MySQL. Aunque puede iniciar sesión como root, una vez que inicie el servidor MySQL, asegúrese de iniciarlo con --user=mysql
opción.
De lo contrario, el sistema puede crear archivos propiedad del usuario raíz, lo que puede causar problemas.
Paso 2:busque el archivo .pid para el servicio MySQL
El siguiente paso es encontrar el archivo .pid para el servicio MySQL.
La mayoría de los sistemas los almacenan en /var/lib/mysql/ , /var/ejecutar/mysqld/ , o /usr/local/mysql/data/ sendero. El nombre del archivo generalmente comienza con mysqld (o el nombre de host de su sistema) y termina con .pid extensión.
Paso 3:Elimine el proceso mysqld
Antes de crear una nueva contraseña de root, detenga el servidor MySQL. Para eliminar el proceso mysqld, abra una línea de comando y ejecute lo siguiente:
kill `cat /mysql-data-directory/host_name.pid`
Reemplace mysql-data-directory/host_name.pid con el nombre de archivo que encontraste en el paso anterior. Asegúrese de especificar la ruta completa al archivo. Además, asegúrese de usar la tecla de retroceso (generalmente sobre la tecla de tabulación) y no una comilla simple al comienzo del comando.
Paso 4:Cree el archivo de contraseña
1. Abra su editor de texto favorito. En este ejemplo, usamos vim:
sudo vim
2. A continuación, agregue la siguiente línea en el archivo:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
Tenga en cuenta incluir las comillas simples y el punto y coma. Reemplazar nueva contraseña con la contraseña que desea utilizar. Finalmente, asegúrese de usar una contraseña fuerte y segura, como estos ejemplos.
El comando funcionará para la máquina que está utilizando actualmente. Si se está conectando a un sistema diferente, reemplace localhost con el nombre de host adecuado.
3. Guarde el archivo en home/me/mysql-init .
Paso 5:reinicie el servidor MySQL y aplique la nueva contraseña
Para aplicar los cambios a la contraseña, reinicie el servidor MySQL ejecutando el siguiente comando en la terminal:
mysqld --init-file=/home/me/mysql-init &
Esto inicia MySQL y aplica el cambio de contraseña del archivo de texto. Dependiendo de cómo inicie su servidor, es posible que deba agregar otras opciones (como --defaults-file
antes de init
comando.)
Paso 6:Limpieza
Por último, inicie sesión en su servidor MySQL usando la cuenta raíz y verifique que la nueva contraseña funcione. Luego, elimine el archivo que creó en el Paso 4.
Cómo restablecer la contraseña raíz de MySQL en Windows
Paso 1:detener el servidor MySQL
1. Comience comprobando si ha iniciado sesión como administrador.
2. Presiona Ganar +R (mantenga presionada la tecla Windows/Super y presione "r"). Una vez que aparezca el cuadro "Ejecutar", escriba:
services.msc
3. Haga clic en Aceptar .
4. Desplácese hacia abajo en la lista de servicios para encontrar el servicio MySQL. Haga clic derecho en esa entrada, luego haga clic izquierdo en Detener .
Paso 2:Inicie un editor de texto
Haz clic en el menú y busca Bloc de notas .
Alternativamente, puede usar la ruta:menú> Accesorios de Windows> Bloc de notas .
Paso 3:Cree un nuevo archivo de texto con el comando de contraseña
1. Introduzca la siguiente línea en el editor de texto:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
Asegúrese de mantener las comillas y el punto y coma. Reemplazar Nueva Contraseña con la contraseña de su elección.
2. Usa el Archivo> Guardar como menú para guardar el archivo en la raíz de su disco duro (C:). Elija un nombre de archivo, como mysql-init.txt .
En consecuencia, el localhost El comando hace que la contraseña cambie en su sistema local. Si está cambiando la contraseña en un sistema a través de la red, sustituya el nombre de host por localhost .
Paso 4:Abra un símbolo del sistema
1. Presione Ctrl +Cambio +Esc .
2. Luego, haga clic en Archivo menú> Ejecutar nueva tarea .
3. Escriba cmd.exe y marque la casilla para ejecutar como administrador.
4. Haga clic en Aceptar. .
Paso 5:reinicie el servidor MySQL con su nuevo archivo de configuración
1. Navegue al directorio MySQL usando el símbolo del sistema:
cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
2. Luego, ingresa lo siguiente:
mysqld --init-file=C:\\mysql-init.txt
Tenga en cuenta que hay dos barras después del mensaje C:.
Además, si eligió un nombre de archivo diferente en el Paso 2, use ese nombre después de la doble barra.
Paso 6:Limpiar
Ahora, puede iniciar sesión en su servidor MySQL como root usando la nueva contraseña.
Verifique dos veces para asegurarse de que funcione. Si tiene opciones de configuración únicas (como iniciar MySQL con un --defaults-file
opción), continúe y hágalo.
Una vez que se inicie MySQL y haya confirmado el cambio de contraseña, elimine el C:\mysql-init.txt archivo.