Maison > Article > base de données > Explication détaillée d'exemples de modification de mots de passe et de restrictions d'accès dans MySQL
MySQL est un véritable serveur de base de données SQL multi-utilisateurs et multithread. MySQL est implémenté sous la forme d'une structure client/serveur, composée d'un démon serveur mysqld et de nombreux programmes et bibliothèques clients différents.
En raison de l'ouverture et de la stabilité de son code source, et de sa combinaison parfaite avec PHP, l'éditeur de sites Web populaire, de nombreux sites Web l'utilisent désormais comme base de données back-end, ce qui le rend largement utilisé. Pour des raisons de sécurité, chaque utilisateur doit se voir attribuer des restrictions d'accès à différentes bases de données afin de répondre aux exigences des différents utilisateurs. Ils sont discutés séparément ci-dessous pour votre référence.
1. Résumé des méthodes de modification du mot de passe MySQL
La première chose à noter est la suivante : dans des circonstances normales, la modification du mot de passe MySQL nécessite des autorisations root dans MySQL, de sorte que les utilisateurs ordinaires ne peuvent pas modifier le mot de passe. à moins que l'administrateur ne soit invité à l'aider à le modifier.
Méthode 1
Utiliser phpMyAdmin
(un outil de gestion graphique de la base de données MySql C'est la plus simple Utiliser directement les instructions SQL pour modifier la table utilisateur de la bibliothèque de base de données mysql, mais n'oubliez pas Pour utiliser la fonction MOT DE PASSE, utilisez la commande Insérer pour insérer un utilisateur, la commande Mettre à jour pour modifier un utilisateur et la commande Supprimer pour supprimer un utilisateur. Il y a une introduction détaillée au champ utilisateur de la table de données plus loin dans cette section.
Méthode 2
Utilisez mysqladmin. Entrez
mysqladmin -u root -p oldpassword newpasswd
Après avoir exécuté cette commande, vous devez entrer le mot de passe d'origine de root, afin que le mot de passe de root soit remplacé par newpasswd. De même, remplacez root dans la commande par votre nom d'utilisateur et vous pourrez modifier votre propre mot de passe.
Bien sûr, si votre mysqladmin ne peut pas se connecter au serveur mysql
, ou si vous ne pouvez pas exécuter mysqladmin, alors cette méthode n'est pas valide et mysqladmin ne peut pas effacer le mot de passe.
Les méthodes suivantes sont utilisées à l'invite mysql et doivent disposer des autorisations root pour mysql : VALUES
('%','system', PASSWORD('manager')); mysql> > Pour être précis, il s'agit d'ajouter un utilisateur, le nom d'utilisateur est système et le mot de passe est manager. Notez que vous devez utiliser la fonction PASSWORD, puis utiliser FLUSH PRIVILEGES pour effectuer la confirmation.
Méthode quatre
Identique à la méthode trois, sauf que l'instruction REPLACE est utilisée
mysql> REPLACE INTO mysql.user (Hôte, Utilisateur, Mot de passe)
VALUES('% ' ,'system',PASSWORD('manager')); mysql> FLUSH PRIVILEGES
Méthode cinq
Utilisez l'instruction SET PASSWORD
mysql> % " = PASSWORD('manager');
Vous devez également utiliser la fonction PASSWORD(), mais vous n'avez pas besoin d'utiliser FLUSH PRIVILEGES pour effectuer la confirmation. Méthode 6
Utilisez l'instruction GRANT... IDENTIFIED BY pour autoriser.
mysql> GRANT USAGE ON *.* TO SYSTEM@"%" IDENTIFIED BY 'manager';
La fonction PASSWORD() n'est pas nécessaire ici, et il n'est pas nécessaire d'utiliser FLUSH PRIVILEGES pour effectuer la confirmation. Remarque : La fonction PASSWORD() est utilisée pour crypter le mot de passe, qui est automatiquement interprété par MySql dans le programme.
2. Comment définir des restrictions d'accès dans MySql
Nous utilisons deux méthodes pour définir les utilisateurs.
Entrez le répertoire d'exécution Mysql (généralement c:mysqlbin). Entrez mysqld-shareware.exe, entrez mysql
--user=root mysql, sinon vous ne pouvez pas ajouter de nouvel utilisateur. Entrez l'invite mysql> Supposons que nous voulions créer un super utilisateur avec le système de noms d'utilisateur et le gestionnaire de mots de passe utilisateur.
Méthode 1
Utilisez la commande Grant pour autoriser, entrez le code comme suit :
mysql> ACCORDEZ TOUS LES PRIVILÈGES SUR *.* À system@localhost IDENTIFIÉ PAR
'manager' AVEC OPTION DE SUBVENTION ; doit 0,38 sec) VALEURS('localhost','system',MOT DE PASSE('manager'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y ','Y');
Pour la version 3.22.34 de MySQL, il y a un total de 14 "Y", et leurs autorisations correspondantes sont les suivantes (classées dans l'ordre des champs) :
Colonne du tableau des autorisations nom Explication correspondante Champ d'utilisation
Select Select_priv ne nécessite l'autorisation de sélection que lors de la récupération réelle d'une table table
insert Insert_priv vous permet d'insérer de nouvelles lignes dans une table existante
update Update_priv vous permet de mettre à jour les lignes dans une table table existante avec nouvelle liste de valeurs
delete Delete_priv vous permet de supprimer les lignes qui remplissent les conditions table
create Create_priv vous permet de créer de nouvelles bases de données et tables bases de données, tables ou index
drop Drop_priv supprime (supprime) les bases de données existantes et tables de base de données ou Table
reload Reload_priv vous permet de dire au serveur de relire la table d'autorisation Gestion du serveur
shutdown Shutdown_priv peut être abusé (en mettant fin au serveur pour refuser le service aux autres utilisateurs) Gestion du serveur
process Process_priv vous permet d'afficher la requête en cours d'exécution Texte brut, y compris la définition ou la modification des mots de passe Administration du serveur de requêtes
Fichier L'autorisation File_priv peut être utilisée de manière abusive pour lire n'importe quel fichier lisible sur le serveur dans une table de base de données Accès aux fichiers sur le serveur
grant Grant_priv vous permet de mettre vous-même les autorisations accordées à d'autres utilisateurs de base de données ou de table
références References_priv vous permet d'ouvrir et de fermer la base de données ou la table du fichier journal
index Index_priv vous permet de créer ou de supprimer (supprimer) une table d'index
alter Alter_priv vous permet de modifier les tables et peut être utilisé pour remplacer le système d'autorisations en renommant la table
Si l'utilisateur est créé avec uniquement les autorisations de sélection, d'insertion, de mise à jour et de suppression, l'utilisateur est autorisé à effectuer des opérations uniquement sur. les tables existantes d'une base de données.
Maintenant nous pouvons créer la base de données que nous voulons utiliser, nous la saisissons directement. Par exemple : si nous voulons créer une base de données nommée XinXiKu, nous pouvons utiliser le code suivant :
mysql>. ;créer la base de données XinXiKu ; affecté (0,00 sec)
4. explication d'exemples d'utilisation de mysqldump pour sauvegarder et restaurer des tables
5 Exemple détaillé de remplacement du contenu de la base de données par des expressions régulières
.
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!