Uff... me olvidé la contraseña de mysql.
A veces cuando instalamos el servidor de base de datos MySQL en cualquier distribución Linux olvidamos por algún motivo la contraseña de root y deseamos reseterla/borrarla, podemos seguir los siguientes pasos desde la línea de comandos siempre y cuando tengamos acceso al usuario root del sistema.
Ingresamos al sistema
Escribimos el siguiente comando para realizar esta tarea con permisos administrativo:
su
poner la contraseña de root, a partir de ahora y en todo el tutorial vamos a trabajar como usuario root.
(si desconoces la contraseña de root, usa "sudo -i" y pones tu propia contraseña)
Como primer paso detenemos el servicio de mysql
/etc/init.d/mysql stop
Ahora iniciamos el demonio mysql con unos atributo especiales, veamos las opciones que usaremos:
--skip-grant-tables
Esta opción causa que el servidor no use el sistema de privilegios lo que le da acceso ilimitado a todas las bases de datos a todos los usuarios de la base de datos.
--skip-networking
Deja de escuchar (LISTEN) conexiones TCP/IP provenientes de la red, es decir MySQL trabajaría en un ambiente totalmente local.
NOTA: Si MySQL fue configurado y compilado con la opción '--disable-grant-options' entonces lo anterior NO funcionará y no hay mucho que se pueda hacer entonces y no se podrá cambiar la contraseña, aunque en la práctica realmente esta opción casi no se usa.
Ejecutamos el comando:
mysqld_safe --skip-grant-tables --skip-networking &
Con Ctrl+c enviamos a segundo plano este proceso
Iniciar el monitor
mysql -u root
Esto nos ingresará directamente y sin mayor preámbulo al shell de mysql, verás que en el prompt de comando cambió a "mysql>" y como no hay sistema de privilegios en este momento, no se preguntara por la contraseña.
Usamos la base de datos del sistema mysql
mysql> use mysql;
Cambiando el password
Ejecutamos el comando que se encargará de asignar el nuevo password del usuario root de mysql
mysql> UPDATE mysql.user SET Password=PASSWORD('passnuevosql')WHERE User='root';
y después refresquemos los privilegios a fin de que tomen efecto los cambios.
mysql> FLUSH PRIVILEGES;
Salimos de mysql, a fin de regresar y poder probar la nueva contraseña.
mysql> exit;
Reiniciamos el servicio y ya tenemos nuestro cambio de clave realizado.
/etc/init.d/mysql restart
Verificando los resultados
La siguiente vez que entres al monitor ya podemos usar la nueva contraseña, ingresamos a mysql para comprobar el cambio de contraseña:
mysql -u root -p
A continuación se le pedirá que ingrese la contraseña, tras lo cual obtendrá de nuevo acceso al shell de mysql.
Verificamos las bases de datos disponibles
mysql> show databases;
Luego salimos con el comando:
mysql> exit;
Ahora entramos a phpmyadmin desde un navegador con la nueva contraseña.
Amigos, para consultas puntuales sobre este tema, pasen por esta comunidad, todos serán bienvenidos!!
_____________________________________________________________________
Si te gusto el post comenta!
Estas sin tiempo para leerlo detenidamente? Agregalo a favoritos ya!
No entendiste algo? mandame un MP que te ayudo.
Te gustan mis aportes? Seguime! no te defraudaré.
Fuentes de conocimiento:
http://arkandasos.com/noticias/cambiar-la-contrasena-de-mysql-linux/
http://www.linuxtotal.com.mx/index.php?cont=info__tips_018
http://elblogdelalf.wordpress.com/2011/07/18/cambiar-contrasena-root-en-mysql-linux/
