phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

Supprimer les privilèges de la base de données MySQL

Le privilège USAGE dans mysql signifie simplement qu'il n'y a pas de privilèges pour l'utilisateur 'phpadmin'@'localhost' défini au niveau global *.* . De plus, le même utilisateur a le privilège ALL sur la base de données phpmyadmin phpadmin.* .

Donc, si vous souhaitez supprimer tous les privilèges et recommencer à zéro, procédez comme suit :

  • Révoquer tous les privilèges au niveau de la base de données :

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

  • Supprimez l'utilisateur 'phpmyadmin'@'localhost'

    DROP USER 'phpmyadmin'@'localhost';

La procédure ci-dessus supprimera entièrement l'utilisateur de votre instance, cela signifie que vous pouvez le recréer à partir de zéro.

Pour vous donner un peu de contexte sur ce qui est décrit ci-dessus :dès que vous créez un utilisateur, le mysql.user le tableau sera rempli. Si vous regardez un enregistrement dedans, vous verrez l'utilisateur et tous les privilèges définis sur 'N' . Si vous faites un show grants for 'phpmyadmin'@'localhost'; vous verrez, la sortie déjà familière, ci-dessus. Traduit simplement par "pas de privilèges au niveau global pour l'utilisateur". Maintenant, votre subvention ALL à cet utilisateur au niveau de la base de données, cela sera stocké dans la table mysql.db . Si vous faites un SELECT * FROM mysql.db WHERE db = 'nameofdb'; vous verrez un 'Y' sur chaque priv.

La description ci-dessus montre le scénario que vous avez actuellement sur votre base de données. Donc, avoir un utilisateur qui n'a que USAGE privilège signifie que cet utilisateur peut se connecter, mais en plus de SHOW GLOBAL VARIABLES; SHOW GLOBAL STATUS; il n'a pas d'autres privilèges.