sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

Fjern privilegier fra MySQL-databasen

USAGE-privilegiet i mysql betyder simpelthen, at der ikke er nogen privilegier for brugeren 'phpadmin'@'localhost' defineret på globalt niveau *.* . Derudover har den samme bruger ALL-privilegium på databasen phpmyadmin phpadmin.* .

Så hvis du vil fjerne alle privilegier og starte helt fra bunden, skal du gøre følgende:

  • Tilbagekald alle privilegier på databaseniveau:

    REVOKE ALL PRIVILEGES ON phpmyadmin.* FROM 'phpmyadmin'@'localhost';

  • Slip brugeren 'phpmyadmin'@'localhost'

    DROP USER 'phpmyadmin'@'localhost';

Ovenstående procedure vil helt fjerne brugeren fra din instans, det betyder, at du kan genskabe ham fra bunden.

For at give dig lidt baggrund om det, der er beskrevet ovenfor:Så snart du opretter en bruger, er mysql.user tabel vil blive udfyldt. Hvis du ser på en post i den, vil du se brugeren og alle privilegier sat til 'N' . Hvis du laver en show grants for 'phpmyadmin'@'localhost'; du vil se, det allerede velkendte, output ovenfor. Simpelthen oversat til "ingen privilegier på globalt niveau for brugeren". Nu giver du ALL til denne bruger på databaseniveau, vil dette blive gemt i tabellen mysql.db . Hvis du laver en SELECT * FROM mysql.db WHERE db = 'nameofdb'; du vil se en 'Y' på hvert priv.

Ovenstående beskrevet viser det scenarie du har på din db i øjeblikket. Altså at have en bruger, der kun har USAGE privilegium betyder, at denne bruger kan oprette forbindelse, men udover SHOW GLOBAL VARIABLES; SHOW GLOBAL STATUS; han har ingen andre privilegier.



  1. Sådan organiserer du dine forbindelser

  2. Sådan deaktiveres streng tilstand i mysql ved hjælp af MAMP på en mac

  3. mysql:DELIMITER syntaksfejl på linje 1

  4. Docker:PhpMyAdmin har en uploadgrænse på 2048KiB