sql >> Databasteknik >  >> Database Tools >> phpMyAdmin

Skapa vy utan SUPER-privilegier i phpMyAdmin

Från dokumentationen:

Om du anger DEFINER-satsen kan du inte ställa in värdet till någon annan användare än din egen om du inte har SUPER-behörigheten. Dessa regler bestämmer de lagliga användarvärdena för DEFINER:

  • *Om du inte har SUPER-behörigheten är det enda lagliga användarvärdet ditt eget konto, antingen bokstavligt angivet eller genom att använda CURRENT_USER. Du kan inte ställa in definieraren på något annat konto.*
  • Om du har SUPER-behörigheten kan du ange vilket syntaktiskt lagligt kontonamn som helst. Om kontot inte faktiskt existerar genereras en varning.

Kontrollera ditt MySQL-konto, det är inte byname @localhost .

Lösningar:

  • Skapa ny vy med DEFINER-klausul med ett konto som beviljats ​​med SUPER-behörighet.
  • Använd inte DEFINER-satsen i CREATE VIEW, i det här fallet kommer MySQL att skapa vyn DEFINER =CURRENT_USER.



  1. Ta bort mellanslag och ersätt med _ i phpMyAdmin

  2. Kan inte komma åt MySQL via XAMPP och phpMyAdmin

  3. Öka primärnyckeln automatiskt i SQL-tabeller

  4. Var i den relevanta specifikationen finns det dokumenterat att vissa kommentarer i ett SQL-skript faktiskt ska köras som giltig SQL (av MySQL)?