sql >> Databasteknik >  >> RDS >> Mysql

mysql - Jag tog bort användartabellen! hur kan jag återställa det?

Det finns inte mycket du kan göra. Om du kan köra frågor och nyligen har säkerhetskopierat hela databasen med "BACKUP TABLE", kan du försöka köra den här frågan:

 RESTORE TABLE mysql.user FROM '/path/to/backup/directory'

Om du inte kan då måste du köra mysql med alternativet '--skip-grant-tables' på kommandoraden. Detta gör att du åtminstone kan få åtkomst. Du kan också återskapa det genom att köra kommandot mysql_install_db. Hittas här

Hur som helst bör ditt bord se ut så här

 +-----------------+---------------+------+-----+---------+-------+ 
 | 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 | | 
 +-----------------+---------------+------+-----+---------+-------+ 


  1. Skapa en global tillfällig tabell i Oracle

  2. Undviker MySQL-deadlock vid uppgradering av delat till exklusivt lås

  3. Hur man sparar ett MySQL-frågeresultat till en .CSV-fil

  4. Hur får man bara numeriska kolumnvärden?