mysql comment réparer l'accès refusé pour l'utilisateur 'root' @ 'localhost'

Avant de gâcher quelque chose, lorsque je me connecte en utilisant $ mysql -u root -p et que j'affiche les bases de données:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| game_data          |
| test               |
+--------------------+

Ensuite, j'ai essayé de créer un nouvel utilisateur et j'ai remarqué que quelque chose ne va pas avec les PRIVILÈGES.

J'ai donc supprimé les nouveaux utilisateurs, et je suppose que j'ai supprimé les "root" et "Admin" accidentellement.

Ensuite, j'essaie de créer à nouveau 'root', mais j'obtiens une erreur de refus d'accès lors de l'octroi de tous les privilèges.

mysql> CREATE USER 'root'@'localhost' IDENTIFIED BY 'password';
mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'password' with grant option;
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Si je me connecte à nouveau à MySQL en utilisant $ mysql -u root -p, et affiche bases de données,

+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+

Toutes les autres bases de données ont disparu.

Comment réparer MySQL maintenant ?

Je ne trouve pas la base de données 'mysql', je ne peux pas créer de base de données, créer un utilisateur, tout ce que j'essaie de faire obtiendra une erreur.

ERREUR 1045 (28000): Accès refusé pour l'utilisateur 'root' @ 'localhost' (en utilisant le mot de passe: OUI).

Dois-je réinstaller MySQL à l'aide de MacPorts ? Si réinstaller, je perdrai la base de données game_data, non?

demandé sur