Necesito restablecer la contraseña de root de mi instalación local de mysql pero no me lo permitió. He intentado esto:
$ sudo /etc/init.d/mysql stop
* Stopping MySQL database server mysqld [ OK ]
[1]- Exit 1 sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking
[2]+ Exit 1 sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking
reg@regDesktopHome:~$ sudo mysqld --skip-grant-tables &
[1] 13651
reg@regDesktopHome:~$ 140627 19:02:02 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
reg@regDesktopHome:~$ mysql -u root mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
reg@regDesktopHome:~$ sudo mysql -u root mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[1]+ Exit 1 sudo mysqld --skip-grant-tables
¿Cómo puedo restablecer la contraseña? edit 1 Tengo esto:
$ ps ax| grep mysql
16515 ? Ssl 0:00 /usr/sbin/mysqld
16551 pts/23 S+ 0:00 grep --color=auto mysql
reg@regDesktopHome:~/semios/v3upgrade$ sudo kill -9 16515
reg@regDesktopHome:~/semios/v3upgrade$ ps ax| grep mysql
16678 ? Ssl 0:00 /usr/sbin/mysqld
16715 pts/23 S+ 0:00 grep --color=auto mysql
reg@regDesktopHome:~/semios/v3upgrade$ mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
parece que un proceso se reinicia automáticamente mysql tan pronto como lo mato ...
dpkg-reconfigure mariadb-server-10.1
funcionó para MariaDB cuando todas las demás soluciones no funcionaron. Gracias por esto.dpkg-reconfigure
no solicitó la contraseña para mí ... ¿hay alguna forma de forzarla?Referencia tomada de este blog:
Paso 1: Detenga el servicio MySQL.
Paso 2: Mata a todos los que ejecutan mysqld.
Paso 3: Iniciando mysqld en modo seguro.
Paso 4: Inicie el cliente mysql
Paso 5: Después de iniciar sesión correctamente, ejecute este comando para cambiar cualquier contraseña.
Paso 6: puede actualizar la contraseña de root de mysql.
para mysql> 5.7 use esto en lugar de lo anterior:
Paso 7: ejecute este comando.
Paso 8: Salga de la consola mysql
Paso 9: Mata mysqld_safe y comienza mysql
fuente
sudo service mysql stop
, nosudo stop mysql
sudo killall mysqld_safe && sudo service mysql start
y luego intente iniciar sesión de nuevoALTER USER root IDENTIFIED BY 'NEW_PASSWORD_HERE'
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NEWPASS';
. Puedes leer sobre esto aquí . Teóricamente (no lo intenté), debería poder iniciar sesión en mysql sin una contraseña si "sudo su -" se convierte en root.ALTER USER ...
que no funcione, useUPDATE mysql.user SET authentication_string = PASSWORD('NEWPASS'), plugin = 'mysql_native_password' WHERE User = 'root' AND Host = 'localhost';
Bajo Ubuntu 16.04 y
mysql-server-5.7
, la respuesta correcta es el último comentario de olafure,dpkg-reconfigure mysql-server-5.7
ya no funciona.Ahora en la consola mysql
>mysql
Reiniciar el buen
mysql
procesoComprueba tu nueva contraseña
fuente
mysqld_safe
la ejecución, me sale el error:Directory '/var/run/mysqld' for UNIX socket file don't exists.
. Así que corrísudo mkdir /var/run/mysqld; sudo chown mysql /var/run/mysqld
y el resto de la respuesta anterior funciona. ¿Es esto un error en Ubuntu 16? Nunca antes había experimentado todos estos problemas al actualizar las contraseñas.Comenzando con MySQL 5.7 , durante la instalación inicial, si deja la contraseña vacía, para ese usuario, la autenticación se basará en el
auth_socket
complemento.La forma correcta de cambiar la contraseña será:
https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/
fuente
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
--skip-grant-tables
opción y vea que esta solución funciona.--skip-grant-tables
opción ni siquiera puedo iniciar sesión en MySQL como root. DiceERROR 1698 (28000): Access denied for user 'root'@'localhost'
mysqld_safe
) como root sin contraseña. Tengo Ubuntu 18.04 y mysql-server-5.7. Esta respuesta me ayudó a askubuntu.com/a/767252/585252 (ver la parte inferior)Nada del resto de las respuestas parecía funcionar para mí. Esta es mi solución:
Ahí:
Luego:
fuente
2017-05-30T06:33:22.291126Z mysqld_safe Logging to syslog. 2017-05-30T06:33:22.294375Z mysqld_safe Logging to '/var/log/mysql/error.log'. 2017-05-30T06:33:22.296874Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.
sudo mkdir /var/run/mysqld; sudo chown mysql /var/run/mysqld
Esto está en mysql 5.7 y ubuntu 18.04 .Crea un archivo con esto:
Detenga el servidor mysql y ejecute esto:
Consulte aquí para obtener más detalles: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
fuente