MySQL, configurar contraseña y evitar “Access denied for user”

‘Hoy es el día
donde te das cuenta
que todo se acaba
que nada regresa

No volverán – Nadie Calavera

Los que tenemos algo de tiempo en estos menesteres estábamos acostumbrados a instalar MySQL desde línea de comandos:

sudo apt-get install mysql-server

Y que durante las configuraciones nos pidiera la contraseña, la cual podíamos dejar en blanco y continuar con la instalación, sin embargo esto cambio (Para Linux mint y ubuntu, al menos los que me ha tocado) pues al instalar MySQL ya no pide contraseña.

Así que la primer pregunta es ¿Cual es la contraseña por default para MySQL? Quiero pensar que alguien mas que yo supuso que en este caso, la contraseña era vacía. (Pues no u_u)

Lo siguiente que hice (Como tantas veces en el pasado) fue tratar de conectarme desde DBeaver y ahí ocurrió el primer fallo, pero vamos que tanto tiempo con MySQL no podía ser de aquí que falla, así que me baje e intenté con mysql workbench y tampoco, despues desde línea de comandos que nunca falla.

mysql -u root -p

Y ahí fue donde me enoje y le puse atención al fallo.

ahi_fue_donde_me_enoje
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Después de reinstalar el MySQL varias veces (Necio), me puse a buscar la solución y es bastante simple, usamos el comando:

sudo mysql_secure_installation

Escogemos el nivel de seguridad de la contraseña, luego ponemos la contraseña que cumpla con esos requisitos, confirmamos. Después decimos si “Y” a todo.

Ahora entramos a MySQL (Con privilegios elevados siempre nos dejo entrar).

sudo mysql

Y ejecutamos el query:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Cambiamos “password” por la contraseña que configuramos.

Salimos de MySQL, reiniciamos el servicio y ahora podemos entrar con root y nuestra nueva contraseña.

Espero les sirva y en un futuro hacer un articulo del porque ahora es así.

Deja un comentario

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