Recientemente un cambio en MySQL ha cambiado la manera de logearse, por lo tanto debemos de crear un usuario para cada aplicación/bbdd que queramos instalar/usar. La nueva manera de autenticarse es unix_sockets por lo que para logearse hemos de entrar por terminal (normalmente si es un servidor externo desde SSH) con el comando:

sudo su
mysql

De esta manera estamos dentro de nuestra instancia de MySQL.

Crear un usuario en MySQL desde línea de comandos

CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'secure_password';

Debemos de reemplazar nombre_usuario por el usuario que queramos crear, así mismo haremos con una contraseña segura en secure_password.

Otorgar permisos al usuario

Para otorgarle todos al usuario en una base de datos en concreto usamos:

GRANT ALL PRIVILEGES ON bbdd.* TO 'nombre_usuario'@'localhost';

Para otorgarle permisos al usuario en todas las bases de datos usamos:

GRANT ALL PRIVILEGES ON *.* TO 'nombre_usuario'@'localhost';

Ver qué permisos tiene el usuario

SHOW GRANTS FOR 'nombre_usuario'@'localhost';

 

Fuente: Linuxize

Permalink del post.