usuario recuperar por defecto crear contraseña mysql

recuperar - ¿Cómo recupero mi nombre de usuario y contraseña de MySQL?



recuperar contraseña root mysql windows (9)

Perdí mi nombre de usuario y contraseña de MySQL. ¿Cómo lo recupero?


Detener el proceso MySQL.

Inicie el proceso MySQL con la opción --skip-grant-tables.

Inicie el cliente de la consola MySQL con la opción -u root.

Lista todos los usuarios;

SELECT * FROM mysql.user;

Restablecer la contraseña;

UPDATE mysql.user SET Password=PASSWORD(''[password]'') WHERE User=''[username]'';

Pero NO OLVIDES de

Detener el proceso MySQL

Comience el proceso MySQL normalmente (es decir, sin la opción --skip-grant-tables)

Cuando termines. De lo contrario, la seguridad de su base de datos podría verse comprometida.


Hazlo sin tiempo de inactividad

Ejecute el siguiente comando en la Terminal para conectarse al DBMS (necesita acceso a la raíz):

sudo mysql -u root -p;

ejecute la contraseña de actualización del usuario de destino (para mi ejemplo, el nombre de usuario es mousavi y su contraseña debe ser 123456 ):

UPDATE mysql.user SET authentication_string=PASSWORD(''123456'') WHERE user=''mousavi'';

en este punto, debe hacer una descarga para aplicar los cambios:

FLUSH PRIVILEGES;

¡Hecho! Lo hiciste sin detenerse o reiniciar el servicio de mysql.


Aunque una interpretación estricta y lógica de la ciencia de la computación de la pregunta de la operación sería requerir tanto "Cómo recuperar mi nombre de usuario MySQL" como "contraseña", pensé que podría ser útil para alguien también abordar la interpretación OR . En otras palabras ...

1) ¿Cómo recupero mi nombre de usuario MySQL?

O

2) contraseña

Esta última condición parece haber sido abordada ampliamente, así que no me molestaré en ello. La siguiente es una solución para el caso "Cómo recupero mi nombre de usuario MySQL" solo. HIH.

Para encontrar su nombre de usuario mysql, ejecute los siguientes comandos desde el shell mysql ...

SELECCIONAR usuario FROM mysql.user;

imprimirá una tabla de todos los usuarios de mysql.


Inicie sesión en MySql desde windows cmd usando el usuario existente:

mysql -u nombre de usuario -p
Introducir la contraseña:****

Luego ejecuta el siguiente comando:

mysql> SELECT * FROM mysql.user;

Después de eso, copie la contraseña md5 cifrada para el usuario correspondiente y hay varias aplicaciones descifradas por contraseña en línea disponibles en la web. Usando esta contraseña de descifrado, úsala para iniciar sesión la próxima vez. o actualice la contraseña del usuario usando el comando de flujo:

mysql> UPDATE mysql.user SET Password=PASSWORD(''[password]'') WHERE User=''[username]'';

Luego, inicie sesión con la nueva contraseña y usuario.


Lamentablemente, su contraseña de usuario es irrecuperable. Ha sido hash con un hash de una manera que, si no sabes, es irreversible. Recomiendo ir con Xenph Yan arriba y simplemente crear uno nuevo.

También puede usar el siguiente procedimiento del manual para restablecer la contraseña de cualquier cuenta raíz de MySQL en Windows:

  1. Inicie sesión en su sistema como administrador.
  2. Detenga el servidor MySQL si se está ejecutando. Para un servidor que se ejecuta como un servicio de Windows, vaya al administrador de servicios:

Menú Inicio -> Panel de control -> Herramientas administrativas -> Servicios

Luego encuentra el servicio MySQL en la lista y detente. Si su servidor no se está ejecutando como un servicio, es posible que necesite usar el Administrador de tareas para obligarlo a detenerse.

  1. Cree un archivo de texto y coloque las siguientes declaraciones en él. Reemplace la contraseña con la contraseña que desea usar.

    UPDATE mysql.user SET Password=PASSWORD(''MyNewPass'') WHERE User=''root''; FLUSH PRIVILEGES;

    Las instrucciones UPDATE y FLUSH deben escribirse en una sola línea. La instrucción UPDATE restablece la contraseña para todas las cuentas raíz existentes, y la instrucción FLUSH le dice al servidor que vuelva a cargar las tablas de concesión en la memoria.

  2. Guarda el archivo. Para este ejemplo, el archivo se llamará C: / mysql-init.txt.
  3. Abra una ventana de consola para llegar al símbolo del sistema:

    Menú Inicio -> Ejecutar -> cmd

  4. Inicie el servidor MySQL con la opción especial --init-file :

    C:/> C:/mysql/bin/mysqld-nt --init-file = C:/mysql-init.txt

    Si instaló MySQL en una ubicación que no sea C: / mysql , ajuste el comando en consecuencia.

    El servidor ejecuta los contenidos del archivo nombrado por la opción --init-file al inicio, cambiando cada contraseña de la cuenta raíz .

    También puede agregar la opción --console al comando si desea que la salida del servidor aparezca en la ventana de la consola en lugar de en un archivo de registro.

    Si instaló MySQL utilizando el Asistente de instalación de MySQL, es posible que deba especificar una opción --defaults-file :

    C:/> "C:/Program Files/MySQL/MySQL Server 5.0/bin/mysqld-nt.exe" --defaults-file="C:/Program Files/MySQL/MySQL Server 5.0/my.ini" --init-file=C:/mysql-init.txt

    La configuración adecuada --defaults-file se puede encontrar usando el Administrador de servicios:

    Menú Inicio -> Panel de control -> Herramientas administrativas -> Servicios

    Encuentre el servicio MySQL en la lista, haga clic derecho sobre él y elija la opción Propiedades. El campo Ruta al ejecutable contiene la configuración --defaults-file .

  5. Una vez que el servidor se haya iniciado correctamente, elimine C: / mysql-init.txt .
  6. Detenga el servidor MySQL, luego reinícielo en modo normal nuevamente. Si ejecuta el servidor como un servicio, inícielo desde la ventana de Servicios de Windows. Si inicia el servidor manualmente, use el comando que use normalmente.

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


Si bien no puedes recuperar directamente una contraseña de MySQL sin aplicar fuerza bruta, puede haber otra manera: si has utilizado MySQL Workbench para conectarte a la base de datos y has guardado las credenciales en "bóveda", estás satisfecho.

En Windows, las credenciales se almacenan en % APPDATA% / MySQL / Workbench / workbench_user_data.dat - cifrado con CryptProtectData (sin ninguna entropía adicional). El descifrado es fácil peasy:

std::vector<unsigned char> decrypt(BYTE *input, size_t length) { DATA_BLOB inblob { length, input }; DATA_BLOB outblob; if (!CryptUnprotectData(&inblob, NULL, NULL, NULL, NULL, CRYPTPROTECT_UI_FORBIDDEN, &outblob)) { throw std::runtime_error("Couldn''t decrypt"); } std::vector<unsigned char> output(length); memcpy(&output[0], outblob.pbData, outblob.cbData); return output; }

O puede consultar este hilo de DonationCoder para fuente + ejecutable de una implementación rápida y sucia.


Si tiene acceso de raíz al servidor donde se está ejecutando mysql, debe detener el servidor mysql usando este comando

sudo service mysql stop

Ahora comienza mysql usando este comando

sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking &

Ahora puede iniciar sesión en mysql usando

sudo mysql FLUSH PRIVILEGES; SET PASSWORD FOR ''root''@''localhost'' = PASSWORD(''MyNewPass'');

Las instrucciones completas se pueden encontrar aquí http://www.techmatterz.com/recover-mysql-root-password/


Si tiene la configuración de ODBC, puede obtener la contraseña del archivo de configuración de ODBC. Esto está en /etc/odbc.ini para Linux y en la carpeta Software / ODBC en el registro de Windows (hay varios, puede llevar algo de caza)


Una mejora a la respuesta más útil aquí:

1] No es necesario reiniciar el servidor mysql
2] Preocupación de seguridad para un servidor MySQL conectado a una red

No hay necesidad de reiniciar el servidor MySQL.

use FLUSH PRIVILEGES; después de la actualización de la declaración mysql.user para cambiar la contraseña.

La instrucción FLUSH le dice al servidor que vuelva a cargar las tablas de concesión en la memoria para que advierta el cambio de contraseña.

El --skip-grant-options permite a cualquier persona conectarse sin una contraseña y con todos los privilegios. Debido a que esto es inseguro, es posible que desee

use --skip-grant-tables junto con --skip-networking para evitar que los clientes remotos se conecten.

de: referencia: resetting-permissions-generic