Créer un utilisateur

mysql -u root -p

Puis

CREATE USER 'mysql'@'localhost' IDENTIFIED by 'mysql';

L'erreur classique consiste à oublier les simples quotes autour du caractère @.

Donner les droits sur toutes les tables à cet utilisateur

mysql -u root -p

Puis:

USE db;

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

Où db est le nom de la base de données.