MySQL Flush Privileges

MySQL Flush Privileges
Pour garder la base de données sécurisée, les autorisations spécifiques sont définies pour des utilisateurs spécifiques, appelés privilèges de l'utilisateur. L'utilisateur racine a tous les privilèges, et toute autorisation peut être accordée ou révoquée par l'utilisateur par l'utilisateur. L'autorisation pour différents types d'opérations de base de données, telles que l'insertion, la mise à jour, la suppression, la sélection et la création, peut être définie pour l'utilisateur en accordant l'autorisation et supprimé en révoquant l'autorisation. Après avoir accordé des autorisations particulières à l'utilisateur, il existe deux façons de rendre les modifications efficaces. Une façon consiste à redémarrer le serveur de base de données, et une autre façon consiste à utiliser la commande Flush Privileges. Les utilisations de la commande MySQL Flush Privileges ont été montrées dans ce tutoriel.

Effets de l'utilisation des privilèges de rinçage:

  • L'autorisation nouvellement accordée à l'utilisateur sera activée après l'exécution de la commande Flush Privileges, et l'utilisateur pourra accéder aux nouveaux privilèges.
  • Si la base de données actuelle est changée en nouvelle, toutes les autorisations nouvellement accordées seront affectées pour la commande Flush Privileges.
  • Les modifications de la base de données liées aux paramètres globaux et au mot de passe de l'utilisateur ne sont pas affectés par la commande Flush Privileges.
  • L'effet des modifications de la base de données ne sera pas visible après avoir exécuté la commande Flush Privileges si la base de données est mise en cache. Vous devez définir la base de données actuelle avec une autre base de données et passer à nouveau à la base de données précédente.

Syntaxe:

La commande Syntaxe de la commande Flush Privileges est donnée ci-dessous. Après avoir exécuté la commande suivante, la table de subvention sera rechargée dans la mémoire.

Privilèges de rinçage;

Utilisations des privilèges MySQL Flush:

Vous devez créer un nouvel utilisateur MySQL pour connaître les utilisations de la commande Flush Privileges.

Connectez-vous avec le serveur MySQL:

Ouvrez le terminal et connectez-vous avec le serveur MySQL en exécutant la commande suivante.

$ sudo mysql -u racine

Créer un nouvel utilisateur:

Exécutez la commande suivante pour créer un nouvel utilisateur avec le nom d'utilisateur, 'fahmida'Et le mot de passe'secret.'

Créer l'utilisateur «fahmida» @ «localhost» identifié par «secret»;

Lorsqu'un nouvel utilisateur est créé dans MySQL, les autorisations par défaut sont définies pour les nouveaux utilisateurs. Le utilisateur Le tableau de la base de données MySQL contient les données liées à la permission de tous les utilisateurs. Exécutez la commande suivante pour vérifier l'autorisation de l'utilisateur nouvellement créé, 'fahmida.'

Sélectionner * dans MySQL.utilisateur où user = "Fahmida" \ g;

La commande ci-dessus générera une longue liste d'informations. Une partie de la sortie s'est montrée dans l'image suivante. La sortie montre qu'aucune autorisation n'est accordée à l'utilisateur, ''fahmida' par défaut.

Mettez à jour l'autorisation de l'utilisateur:

L'autorisation spécifique pour tout utilisateur peut être accordée en utilisant la requête de mise à jour ou en utilisant la commande Grant. Si l'autorisation est modifiée en utilisant la requête de mise à jour, la commande Flush Privilege est nécessaire pour rendre le changement efficace. Si l'autorisation est modifiée en utilisant la commande Grant, alors la commande de privilège Flush n'est pas nécessaire pour rendre le changement efficace.

Exécutez la requête de mise à jour suivante pour définir l'autorisation de sélection pour l'utilisateur, 'Fahmida ' Pour toutes les tables de toutes les bases de données.

Mettre à jour MySQL.set utilisateur select_priv = "y" où user = "Fahmida";

Pour rendre l'opération de mise à jour efficace, vous devez exécuter la commande de privilège Flush.

Privilèges de rinçage;

Relancer la commande suivante après avoir réglé l'autorisation de sélection pour l'utilisateur, 'fahmida.'

Sélectionner * dans MySQL.utilisateur où user = "Fahmida" \ g;

Sortir:

La sortie suivante montre que le privilège sélectionné a été accordé à l'utilisateur.

Exécutez la commande Grant suivante pour définir les autorisations d'insertion et de supprimer pour l'utilisateur, 'fahmida.' Vous n'avez pas besoin d'utiliser la commande Flush Privileges pour cette commande.

Insert de subvention, supprimer *.* À Fahmida @ 'localhost';

Exécutez à nouveau la commande SELECT suivante après la définition de l'insertion et supprimez les autorisations pour l'utilisateur, 'fahmida.'

Sélectionner * dans MySQL.utilisateur où user = "Fahmida" \ g;

Sortir:

La sortie suivante montre que l'insertion et la suppression de privilèges ont été accordés à l'utilisateur.

Modifier le mot de passe de l'utilisateur:

De nombreuses commandes existent dans MySQL pour modifier le mot de passe de l'utilisateur. Définir, modifier et mettre à jour les déclarations. La commande de privilège Flush devra utiliser si le mot de passe est modifié en utilisant la requête de mise à jour, et la commande de privilège Flush ne sera pas requise si le mot de passe est modifié par les commandes définies ou modifiées. Les utilisations des instructions alter et de mise à jour ont été montrées ici.

Exécutez la commande suivante pour vérifier la valeur du Authentication_string valeur avant de modifier le mot de passe.

Sélectionnez Authentication_string à partir de MySQL.utilisateur où user = "Fahmida";

Sortir:

La sortie suivante montre le Authentication_string valeur pour le mot de passe, 'secret.'

Exécutez la commande alter suivante pour modifier le mot de passe de l'utilisateur, 'fahmida.'

Modifier l'utilisateur 'Fahmida' @ 'localhost' identifié par 'Secret2';

Vous n'avez pas besoin d'utiliser la commande Flush Privileges pour activer le mot de passe modifié par l'instruction alter. Exécutez la commande suivante pour vérifier le Authentication_string valeur après avoir modifié le mot de passe.

Sélectionnez Authentication_string à partir de MySQL.utilisateur où user = "Fahmida";

Sortir:

La sortie suivante montre le nouveau Authentication_string valeur après avoir modifié le mot de passe.

Exécutez l'instruction de mise à jour suivante pour définir le mot de passe nulle en utilisant Authentication_string pour l'utilisateur, 'fahmida.'

Mettre à jour MySQL.set utilisateur authentication_string = null où user = "Fahmida";

La commande Flush Privileges doit utiliser ici pour rendre le changement efficace pour l'instruction de mise à jour.

Privilèges de rinçage;

Exécutez la commande suivante pour vérifier le Authentication_string valeur après avoir modifié le mot de passe.

Sélectionnez Authentication_string à partir de MySQL.utilisateur où user = "Fahmida";

Sortir:

La sortie suivante montre le nouveau Authentication_string valeur après avoir modifié le mot de passe.

Conclusion:

Les utilisations de la commande Flush Privileges après avoir accordé des privilèges et modifié le mot de passe de l'utilisateur ont été affichés dans ce tutoriel en créant un nouveau compte utilisateur. L'utilisation de la commande de privilège Flush sera effacée après avoir lu ce tutoriel.