Maison  >  Article  >  base de données  >  Où est la table utilisateur de MySQL ?

Où est la table utilisateur de MySQL ?

青灯夜游
青灯夜游original
2022-11-08 18:17:134277parcourir

La table user se trouve dans une base de données nommée "mysql". MySQL créera automatiquement une base de données nommée "mysql" lors de l'installation. La base de données mysql stocke les tables d'autorisations des utilisateurs ; la table des utilisateurs est la table d'autorisations la plus importante de la base de données mysql et est utilisée pour enregistrer les comptes autorisés à se connecter au serveur. Toutes les autorisations activées dans la table utilisateur sont globales et s'appliquent à toutes les bases de données.

Où est la table utilisateur de MySQL ?

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

La table user se trouve dans une base de données nommée "mysql".

MySQL créera automatiquement une base de données nommée mysql lors de l'installation. La base de données mysql stocke les tables d'autorisations des utilisateurs. Une fois l'utilisateur connecté, MySQL accordera les autorisations correspondantes à chaque utilisateur en fonction du contenu de ces tables d'autorisations.

La table utilisateur est la table d'autorisation la plus importante dans MySQL, utilisée pour enregistrer les informations de compte autorisées à se connecter au serveur. Il convient de noter que toutes les autorisations activées dans la table user sont globales et s'appliquent à toutes les bases de données.

Où est la table utilisateur de MySQL ?Où est la table utilisateur de MySQL ?

Champs de la table utilisateur

Les champs de la table utilisateur peuvent être grossièrement divisés en 4 catégories, à savoir les colonnes utilisateur, les colonnes d'autorisations, les colonnes de sécurité et les colonnes de contrôle des ressources. Ce qui suit présente principalement les colonnes. champs de ces champs signification.

Colonne Utilisateur

La colonne utilisateur stocke les informations que les utilisateurs doivent saisir lors de la connexion à la base de données MySQL. Il convient de noter que la version MySQL 5.7 n'utilise plus le mot de passe comme champ de mot de passe, mais l'a remplacé par Authentication_string.

La liste des utilisateurs pour MySQL version 5.7 est présentée dans le tableau 1.

Tableau 1 : Colonne utilisateur de la table utilisateur
Nom du champ Type de champ Est-il vide Valeur par défaut Description
Hôte char(60) NON Aucun Nom d'hôte
Utilisateur char(32) NON Aucun Nom d'utilisateur
authentication_string text OUI Aucun Mot de passe

Lorsqu'un utilisateur se connecte, si ces trois champs correspondent en même temps, le système de base de données MySQL lui permettra de se connecter. Lors de la création d'un nouvel utilisateur, les valeurs de ces trois champs sont également définies. Lorsque vous modifiez le mot de passe d'un utilisateur, vous modifiez en fait la valeur du champ chaîne_authentification de la table utilisateur. Ces 3 champs déterminent donc si l'utilisateur peut se connecter.

Colonne Permission

Les champs de la colonne permission déterminent les autorisations de l'utilisateur et sont utilisés pour décrire les opérations autorisées sur les données et les bases de données dans la portée globale.

Les autorisations sont grossièrement divisées en deux catégories, à savoir les autorisations de gestion avancées et les autorisations ordinaires :

  • Les autorisations de gestion avancées gèrent principalement la base de données, telles que les autorisations pour fermer des services, les super autorisations et charger des utilisateurs, etc. faire fonctionner la base de données, comme les autorisations de requête, les autorisations de modification, etc.
  • Les colonnes d'autorisation de la table utilisateur incluent Select_priv, Insert_priv et d'autres champs se terminant par priv. Le type de données de ces valeurs de champ est ENUM. Les seules valeurs possibles sont Y et N : Y signifie que l'utilisateur. a les autorisations correspondantes, et N signifie que l'utilisateur dispose des autorisations correspondantes. Il n'y a pas d'autorisation correspondante. Pour des raisons de sécurité, la valeur par défaut de ces champs est N.

enum ('n', 'y') enum (' 'N','Y')enum('N','Y') enum('N' ,'Y')enum('N','Y')enum('N ','Y')enum('N','Y')enum('N',' Y' )enum('N','Y')enum ('n', 'y') enum( 'N','Y')enum('N','Y' )enum('N','Y')enum('N ','Y ')enum('N','Y')enum('N','Y')enum('N','Y')enum('N','Y')enum('N','Y')
Table 2 : Colonne d'autorisation de la table utilisateur
Nom du champ Type de champ S'il est vide Valeur par défaut Description
Select_priv enum('N',' Y') NON N Est-il possible d'interroger des données via la commande SELECT
Insert_priv enum('N','Y') NO N Est-il possible d'insérer des données via la commande INSERT
Update_priv enum('N','Y') NO N Les données existantes peuvent-elles être modifiées via la commande UPDATE
Delete_priv enum('N', 'Y') NON N Est-il possible de supprimer des données existantes via la commande DELETE
Create_priv enum('N','Y') NON N Est-ce possible pour créer de nouvelles bases de données et tables
Drop_priv enum('N','Y') NON N Est-il possible de supprimer des bases de données et des tables existantes
Reload_priv enum(' N','Y') NON N Est-il possible d'exécuter des commandes spécifiques pour vider et recharger les différents caches internes utilisés par MySQL, y compris les journaux, les autorisations, les hôtes, les requêtes et les tables
Shutdown_priv enum('N','Y') NON N Est-il possible d'arrêter le serveur MySQL. Vous devez être très prudent lorsque vous accordez cette autorisation à un utilisateur autre que le compte root
Process_priv enum('N','Y') NO N Si elle peut être visualisée via SHOW Commande PROCESSLIST Le processus des autres utilisateurs leFile_priv
Non n peut-il exécuter les commandes Select into Outfile et Load Data Infile Grant_priv
NON N Pouvez-vous accorder vos autorisations à d'autres utilisateurs ? Est-il possible de créer des contraintes de clé étrangère Index_priv
NON N Est-il possible d'effectuer des vérifications d'ajout et de suppression sur l'index Alter_priv
NO N La structure de la table peut-elle être renommé et modifié Show_db_priv
NO N Le serveur peut-il être visualisé Nom de toutes les bases de données sur Super_priv
NON N Est-il possible d'effectuer certaines fonctions administratives puissantes telles que celles pour lesquelles l'utilisateur dispose de droits d'accès suffisants ? Utilisez la commande KILL pour supprimer le processus utilisateur ; pour modifier les variables MySQL globales et exécuter diverses commandes concernant la réplication et la journalisation. (Super autorisations) Create_tmp_table_priv
NO N Est-il possible de créer des tables temporaires Lock_tables_priv
NO N Est-il possible d'utiliser la commande LOCK TABLES pour empêcher l'accès/modification des tables Execute_priv
NO N Si la procédure stockée repl_slave_priv
No n can Lire le fichier journal binaire utilisé pour maintenir un environnement de base de données répliqué repl_client_priv
NON N Est-il possible de déterminer l'emplacement du serveur esclave et du serveur maître de réplication Create_view_priv
NON N Est-il possible de créer une vue Show_view_priv
NON N Est-il possible de visualiser une vue Create_routine_priv
NO N Les procédures et fonctions stockées peuvent-elles être modifiées ou supprimées Alter_routine_priv
NON N Le stockage peut-il être modifié ou supprimé Fonctions et fonctions Create_user_priv
NO N S'il est possible d'exécuter CREATE USER commande, qui est utilisée pour créer un nouveau compte MySQL Event_priv
NO N Les événements peuvent-ils être créés, modifiés et supprimés Trigger_priv
NO N Est-il possible de créer et de supprimer des déclencheurs Create_tablespace_priv
NO N Est-il possible de créer un tablespace

Si vous souhaitez modifier les autorisations, vous pouvez utiliser l'instruction GRANT pour accorder certaines autorisations à l'utilisateur, ou vous pouvez définir des autorisations en mettant à jour la table utilisateur avec l'instruction UPDATE.

Colonne de sécurité

La colonne de sécurité est principalement utilisée pour déterminer si l'utilisateur peut se connecter avec succès. La colonne de sécurité de la table utilisateur est présentée dans le tableau 3 :

blobNONPrend en charge les champs standard x509 x509_subject blobNOPrend en charge les champs standard x509pluginchar(64)NOmysql_native_pass wordIntroduit des plugins pour la vérification du mot de passe lorsque les utilisateurs se connectent, les plugins créent des externes /utilisateurs proxy password_expiredenum('N','Y')NONLe mot de passe est-il expiré (N n'est pas expiré, y est expiré)password_last_changedtim estampille OUI Enregistrez l'heure à laquelle le mot de passe a été modifié pour la dernière foispassword_lifetimesmallint(5) unsignedOUIDéfinissez la durée de validité du mot de passe en joursaccount_lockedénumération ('N','Y' )NONNQue l'utilisateur soit verrouillé (Y verrouillé, N déverrouillé)Colonne de contrôle des ressourcesType de champ
Tableau 3 : Colonne de sécurité de la table utilisateur.
Nom du champ Type de champ S'il est vide Valeur par défaut Description
ssl_type enum('','ANY','X509','SPECIFIED' ) NON "Champ de sécurité de cryptage standard SSL pris en charge"
Remarque : Même si password_expired est "Y", l'utilisateur peut toujours utiliser le mot de passe pour vous connecter à MySQL, mais aucune opération n'est autorisée. Habituellement, les distributions standard ne prennent pas en charge SSL. Les lecteurs peuvent utiliser l'instruction SHOW VARIABLES LIKE "have_openssl" pour vérifier si elle dispose de la fonctionnalité SSL. Si la valeur de have_openssl est DISABLED, la fonctionnalité de chiffrement SSL n'est pas prise en charge.
Les champs de la colonne de contrôle des ressources sont utilisés pour limiter les ressources utilisées par les utilisateurs. Les colonnes de contrôle des ressources de la table des utilisateurs sont présentées dans le tableau 4. Tableau 4 : Colonne de contrôle des ressources de la table utilisateur Nom du champ
S'il est vide

Valeur par défaut

Description

max_questions


int(11) non signé

NO 0Spécifie le nombre d'opérations de requête autorisées par heuremax_updatesint(11) unsignedNO0Spécifie le nombre d'opérations de mise à jour autorisées par heuremax_connect ions int(11) unsignedNO0Spécifie le nombre d'opérations de connexion autorisées à être effectuées par heuremax_user_connectionsint(11) unsignedNO0Spécifie le numéro de les connexions peuvent être établies simultanémentComment accéder à la table utilisateur1. Connectez-vous à la base de données MySQL et affichez toutes les informations par défaut de la base de donnéesAprès avoir changé de base de données, vous pouvez afficher toutes les tables de données de la base de données via la commande show À la fin, vous pouvez voir la table de données utilisateur
La valeur par défaut des champs ci-dessus est 0, ce qui signifie qu'il n'y a pas de limite. Si le nombre de requêtes ou de connexions utilisateur dépasse la limite de contrôle des ressources dans l'heure, l'utilisateur sera verrouillé et ne pourra pas effectuer les opérations correspondantes ici avant l'heure suivante. Les valeurs de ces champs peuvent être mises à jour à l'aide de l'instruction GRANT.
2. Parce que la table utilisateur existe dans la base de données MySQL, vous pouvez changer de base de données. via la commande use


Vous pouvez. afficher les informations structurelles de la table user via la commande desc, car la table User contient Il y a plus d'informations, donc il y a plus d'informations structurelles

Dans le cas où aucun autre utilisateur n'est créé par défaut, il n'y a que le informations du super administrateurOù est la table utilisateur de MySQL ?

[Recommandations associées : Où est la table utilisateur de MySQL ?tutoriel vidéo mysql

]

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn