2012-04-25 13 views
7

Instalé MySQL y estaba jugando con las configuraciones de contraseñas intentando que Wordpress se conectara. Al hacerlo, parece que he codificado mi contraseña de root y ahora no puedo iniciar sesión.No se puede iniciar mysqld_safe para restablecer la contraseña de root

estoy tratando de restablecer la contraseña mediante la ejecución de

/etc/init.d/mysqld stop 

Entonces

mysqld_safe --skip-grant-tables 

que da salida a

Starting mysql daemon with databases from /var/lib/mysql 

Pero entonces no hace nada. No tiene éxito ni falla. No tengo ninguna configuración de bases de datos, así que me gustaría desinstalar y volver a instalar mysql si fuera necesario, pero lo intenté en vano. ¿Cómo puedo volver a entrar?

+0

Si la reinstala, la contraseña debería desaparecer y debería poder acceder a ella. – CoffeeRain

+0

Exactamente lo que terminé haciendo ... golpearlo con un martillo. – jcpeden

Respuesta

13

mysqld_safe es el comando para iniciar el motor mysql. Se supone que no debe hacer o mostrar nada después de la línea diciendo que se inició mysql. Una vez que haya ejecutado mysqld_safe, el siguiente paso es ejecutar mysql. Como comenzó mysqld con --skip-grant-tables, no necesitará especificar un nombre de usuario o contraseña.

A continuación, puede dar el comando para restablecer la contraseña de root. Para obtener instrucciones sobre cómo configurar una contraseña, consulte http://dev.mysql.com/doc/refman/5.0/en/set-password.html.

+0

No me permitía ingresar nada más, el sistema simplemente se colgó. – jcpeden

+0

¿Se cuelga todo el sistema? ¿O solo quieres decir que la terminal en la que escribiste 'mysqld_safe' no hizo nada? Eso es lo que se supone que debe suceder. Necesita abrir una nueva terminal y luego ejecutar 'mysql'. – octern

+0

¡Gracias por explicar esto más claramente! – jcpeden

2

¿Has probado "mysqld --skip-grant-tables" en lugar de mysqld_safe? asegúrese de eliminar los hilos mysqld que no murieron antes de iniciar mysqld --skip-grant-tables. Haz un ps -ef y grep para mysql, kill -9 cualquier proceso mysql, luego inícialo --skip-grants-tables.

+0

No intenté arrancarlo del modo seguro e intenté eliminar cualquier proceso, pero no pude encontrar nada para matar, estoy bastante seguro de que el proceso ya debe haber estado ejecutándose y al sistema no le gustó que le dijeran que comience. de nuevo. Solo confundiendo que no había ningún mensaje de error. – jcpeden

+0

¿mysqld_safe registra algo en el error.log o mensajes? ¿Hay un proceso mysqld ejecutándose después de iniciarlo en modo seguro o con --skip-grant-tables? Si tratas el mysqld pid, ¿qué muestra el strace? – MichaelN

Cuestiones relacionadas