Reiniciar contraseña de root mysql

La necesidad de usar mysql en estos días, provoco un gran dilema y un pequeño problema.

Personalmente no me gusta usar mysql, prefiero usar otras bases de datos, para no hacerla tan cansada, un sysadmin dejo su trabajo y no dejo los passwords, vaya problema, se fue resolviendo uno a uno, el que me pareció mas complejo de resolver fue la contraseña de root de mysql, tengo cero experiencia con eso y todo estaba en un servidor de producción con un montón de bases de datos, con al menos una conexión en cada una, así que no podíamos tener el lujo de detener el servidor, desinstalar un montón de cosas y reinstalar.

Buscando en la documentación de mysql encontré la forma de resetear el pass de root, de una manera muy simple, para probar monte una maquina virtual debian 7 y ahi realise el proceso hasta estar seguro de que no tendría daños colaterales.

a qui los pasos

 

  • entrar como root o usuario administrador al server
  • localizar el archivo .pid de mysql regularmente esta en estas ubicaciones /var/lib/mysql//var/run/mysqld/
  • root@maisicuel:/var/run/mysqld# cat mysqld.pid
  • 978 (el 978 es el proceso que ejecuta en tu server puede ser otro numero)
  • debemos crear un archivo de texto con el siguiente contenido UPDATE mysql.user SET Password=PASSWORD('MiNuevoPass') WHERE User='root';
    FLUSH PRIVILEGES;
  • detenemos mysql con root@maisicuel:/var/run/mysqld# kill 978
  • iniciamos mysql de la siguiente forma
    mysqld_safe –init-file=/var/run/mysqld/pass &
  • accedes con tu phpmyadmin
bueno aver mas despacio, 
entramos como root al server ya sea físicamente o por ssh,
buscamos el archivo mysqld.pid y vemos su contenido con cat mysqld.pid 
creamos un archivo de texto en la ubicación que quieras, yo lo conserve en el mismo lugar y le puse pass,  es muy importante que tenga este contenido=
UPDATE mysql.user SET Password=PASSWORD('MiNuevoPass') WHERE User='root';
FLUSH PRIVILEGES;
guardas y verificas tu archivo que este bien y pueda leerse, 
ahora viene lo bueno, vamos a detener mysql con kill (recomiendo que tengas tus respaldos al día)
inmediatamente arrancas tu mysql de la siguiente forma mysqld_safe –init-file=/var/run/mysqld/pass &
y eso es todo verificas que puedes accesar desde phpmyadmin,
seguí los pasos de este enlace, 
tratare de hacer un videito estos días por si tienen dudas,
tengo el problema de que explico las cosas como las entiendo y las personas no me entienden =( 
jejejeje 
el proceso desde las pruebas hasta la ejecucion me llevo unos 40 mins, el proceso en el server real unos 2 minutos. 

Un pensamiento en “Reiniciar contraseña de root mysql

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *