Cómo encontrar la contraseña de root de MySQL

No puedo entender mi contraseña de root de MySQL; ¿Cómo puedo descubrir esto? ¿Hay algún archivo donde se almacena esta contraseña?

Estoy siguiendo este enlace, pero no tengo directorio directadmin en local.

gracias a @thusharaK podría restablecer la contraseña de root sin conocer la contraseña anterior.

En ubuntu hice lo siguiente:

sudo service mysql stop sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking 

Luego ejecuta mysql en una nueva terminal:

 mysql -u root 

Y ejecute las siguientes consultas para cambiar la contraseña:

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

En MySQL 5.7, se eliminó el campo de contraseña en el campo de la tabla mysql.user, ahora el nombre del campo es ‘authentication_string’.

Salga del modo seguro mysql e inicie el servicio mysql de la siguiente manera:

 mysqladmin shutdown sudo service mysql start 

No puedes ver la contraseña hash; ¡lo único que puedes hacer es restablecerlo!

Detener MySQL:

 sudo service mysql stop 

o

 $ sudo /usr/local/mysql/support-files/mysql.server stop 

Comience en modo seguro:

 $ sudo mysqld_safe --skip-grant-tables 

(la línea superior es el comando completo)

Este será un comando continuo hasta que finalice el proceso, por lo tanto abra otra ventana de shell / terminal e inicie sesión sin contraseña:

 $ mysql -u root mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 

MySQL 5.7 y más:

 mysql> use mysql; mysql> update user set authentication_string=password('password') where user='root'; 

Inicia MySQL:

 sudo mysql start 

o

 sudo /usr/local/mysql/support-files/mysql.server start 

Tu nueva contraseña es ‘contraseña’.

MySQL 5.7 y superior guarda la raíz en el archivo de registro de MySQL.

Por favor intente esto:

 sudo grep 'temporary password' /var/log/mysqld.log 

No puedes encontrarlo Se almacena en una base de datos, para lo que necesita la contraseña de root para acceder, e incluso si obtuvo acceso de alguna manera, es hash con un hash de un solo sentido. Puede restablecerlo: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

Siga estos pasos para restablecer la contraseña en el sistema de Windows

  1. Detener el servicio Mysql del administrador de tareas

  2. Crea un archivo de texto y pega la statement siguiente

MySQL 5.7.5 y anterior:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');

MySQL 5.7.6 y posterior:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yournewpassword';

  1. mysql-init.txt como mysql-init.txt y colóquelo en 'C' drive .

  2. Abra el símbolo del sistema y pegue lo siguiente

C:\> mysqld --init-file=C:\\mysql-init.txt

A menos que el administrador de paquetes le pida que escriba la contraseña de root durante la instalación, la contraseña de root predeterminada es la cadena vacía. Para conectarse al servidor recién instalado, escriba:

 shell> mysql -u root --password= mysql> 

Para cambiar la contraseña, recupera el shell de Unix y escribe:

 shell> mysqladmin -u root --password= password root 

La nueva contraseña es ‘root’. Ahora conéctese al servidor:

 shell> mysql -u root --password= ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 

Vaya, la contraseña ha cambiado. Usa el nuevo, root :

 shell> mysql -u root --password=root ... blah, blah, blah : mysql welcome banner ... mysql> 

¡Bingo! Nuevo hacer algo interesante

 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+ 3 rows in set (0.00 sec) 

Maurycy

Como complemento de las otras respuestas, en una instalación de /root/.my.cnf , la contraseña de root de mysql se almacena en un archivo llamado /root/.my.cnf . (y el servicio de cpanel lo restablece en el cambio, por lo que las otras respuestas aquí no serán de ayuda)

puedes ver la contraseña de root de mysql, así que la he probado en mysql 5.5 así que no sé si otra versión nueva funciona o no

 nano ~/.my.cnf 

La contraseña predeterminada que funcionó para mí después de la instalación inmediata del servidor mysql es: ” mysql ” (sin comillas)

El procedimiento cambia según la versión de MySql. Siga el procedimiento exactamente como se describe para su versión:

  • HINTS – Lee antes de la página de instrucciones para tu versión de MySql *

  • En el paso 5: en lugar de ejecutar CMD, cree un acceso directo en su escritorio llamando a CDM.exe. A continuación, haga clic derecho en el acceso directo y seleccione “Ejecutar como administrador”.

  • En el paso 6: saltee la primera versión propuesta del comando y ejecute el segundo, el que tiene el parámetro –defaults-file

  • Una vez que ejecuta el comando, si todo está bien, la ventana de CMD permanece abierta y el comando del paso 6 continúa ejecutándose. Simplemente cierre la ventana (haga clic en “x”) y luego fuerce a cerrar MySQl desde el Administrador de tareas.

  • Elimine el archivo con los comandos SQL y comience nuevamente MySQL. La contraseña debe cambiarse ahora.

5.0 http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

5.1 http://dev.mysql.com/doc/refman/5.1/en/resetting-permissions.html

… simplemente cambie la versión en el enlace (5.5, 5.6, 5.7)

En su archivo .err “hostname” dentro de la carpeta de datos en la que trabaja MySQL, intente buscar una cadena que comience con:

“Se genera una contraseña temporal para roor @ localhost”

puedes usar

 less /mysql/data/dir/hostname.err 

luego barra de comando seguida de la cadena que desea buscar

 /"A temporary password" 

Luego presione n, para ir al siguiente resultado.

Esto funcionó para mí:

En la terminal escriba lo siguiente

$ sudo mysql -u root -p

Ingresa la contraseña: // solo presiona enter

mysql>

Las respuestas provistas aquí no parecieron funcionar, el truco resultó ser: ALTER USER ‘root’ @ ‘localhost’ IDENTIFICADO CON mysql_native_password BY ‘test’;

(complete la respuesta aquí: https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/ )

Vaya a phpMyAdmin> config.inc.php> $ cfg [‘Servers’] [$ i] [‘password’] = ”;