Es gibt nicht viel, was Sie tun können. Wenn Sie Abfragen ausführen können und kürzlich die gesamte Datenbank mit "BACKUP TABLE" gesichert haben, können Sie versuchen, diese Abfrage auszuführen:
RESTORE TABLE mysql.user FROM '/path/to/backup/directory'
Wenn dies nicht möglich ist, müssen Sie mysql mit der Option „--skip-grant-tables“ in der Befehlszeile ausführen. Dadurch erhalten Sie zumindest Zugriff. Sie können es auch neu erstellen, indem Sie den Befehl mysql_install_db ausführen. Hier gefunden
In jedem Fall sollte Ihre Tabelle so aussehen
+-----------------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+-------+
| Host | varchar(20) | | PRI | | |
| User | varchar(6) | | PRI | | |
| Password | varchar(41) | | | | |
| Select_priv | enum('N','Y') | | | N | |
| Insert_priv | enum('N','Y') | | | N | |
| Update_priv | enum('N','Y') | | | N | |
| Delete_priv | enum('N','Y') | | | N | |
| Create_priv | enum('N','Y') | | | N | |
| Drop_priv | enum('N','Y') | | | N | |
| Reload_priv | enum('N','Y') | | | N | |
| Shutdown_priv | enum('N','Y') | | | N | |
| Process_priv | enum('N','Y') | | | N | |
| File_priv | enum('N','Y') | | | N | |
| Grant_priv | enum('N','Y') | | | N | |
| References_priv | enum('N','Y') | | | N | |
| Index_priv | enum('N','Y') | | | N | |
| Alter_priv | enum('N','Y') | | | N | |
+-----------------+---------------+------+-----+---------+-------+