Maison > Article > base de données > Quand les PRIVILEGES FLUSH sont-ils réellement nécessaires dans MySQL ?
Quand utiliser (et ne pas utiliser) FLUSH PRIVILEGES dans MySQL
Lors de la création de nouveaux utilisateurs et de leurs bases de données associées, il est courant d'exécuter des commandes comme :
CREATE DATABASE mydb; GRANT ALL PRIVILEGES ON mydb.* TO myuser@localhost IDENTIFIED BY "mypassword";
Cependant, on voit souvent que la commande FLUSH PRIVILEGES est également utilisée après ces commandes dans les tutoriels. Cela soulève la question : quand FLUSH PRIVILEGES est-il réellement nécessaire ?
Quand FLUSH PRIVILEGES est inutile
Comme indiqué dans la documentation MySQL, les privilèges attribués via GRANT ne nécessitent pas FLUSH PRIVILÈGES pour prendre effet. Le serveur MySQL reconnaît immédiatement ces modifications et recharge les tables de subventions.
Lorsque FLUSH PRIVILEGES est nécessaire
FLUSH PRIVILEGES n'est nécessaire que lorsque les tables de subventions sont modifiées directement à l'aide de commandes telles que INSÉRER, METTRE À JOUR ou SUPPRIMER. Dans ces cas, les modifications ne seront pas reflétées dans la vérification des privilèges jusqu'au redémarrage du serveur ou au rechargement des tables d'attribution à l'aide de FLUSH PRIVILEGES.
Cette distinction est importante à comprendre pour éviter la confusion qui peut survenir lorsque des modifications sont apportées à les tables d'octroi via des modifications directes ne semblent avoir aucun effet.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!