Maison > base de données > tutoriel mysql > le corps du texte

Une brève discussion sur la façon d'ajouter, de supprimer des utilisateurs et d'autoriser dans MySQL

青灯夜游
Libérer: 2021-10-08 18:49:53
avant
2296 Les gens l'ont consulté

Cet article vous présentera la gestion des utilisateurs dans MySQL et vous présentera les méthodes d'ajout d'utilisateurs, d'autorisation et de suppression d'utilisateurs. J'espère qu'il vous sera utile !

Une brève discussion sur la façon d'ajouter, de supprimer des utilisateurs et d'autoriser dans MySQL

N'utilisez pas directement l'utilisateur root pour gérer les données de l'application. [Recommandations associées : root 用户管理应用数据。【相关推荐:mysql视频教程

添加用户

以root用户登录数据库,运行以下命令:

create user zhangsan identified by 'zhangsan';
Copier après la connexion

上面的命令创建了用户 zhangsan, 密码是 zhangsan. 在 mysql.user 表里可以查看到新增用户的信息:

select User, Host, Password from mysql.user where User = 'zhangsan';
Copier après la connexion

授权

命令格式: grant privilegesCode on dbName.tableName to username@host identified by "password";

grant all privileges on zhangsanDb.* to zhangsan@'%' identified by 'zhangsan';
flush privileges;
Copier après la connexion

上面的语句将 zhangsanDb 数据库的所有操作权限都授权给了用户 zhangsan.

mysql.db 表里可以查看到新增数据库权限的信息:

select User, Db, Host, Select_priv, Insert_priv, Update_priv, Delete_priv from mysql.db where User = 'zhangsan';
Copier après la connexion

也可以通过 show grants 命令查看权限授予执行的命令:

show grants for 'zhangsan';
Copier après la connexion

privilegesCode 表示授予的权限类型, 常用的有以下几种类型[1]

  • all privileges: 所有权限
  • select: 读取权限
  • delete: 删除权限
  • update: 更新权限
  • create: 创建权限
  • drop: 删除数据库、数据表权限

dbName.tableName 表示授予权限的具体库或表, 常用的有以下几种选项

  • .: 授予该数据库服务器所有数据库的权限
  • dbName.*: 授予dbName数据库所有表的权限
  • dbName.dbTable: 授予数据库dbName中dbTable表的权限

username@host 表示授予的用户以及允许该用户登录的IP地址. 其中Host有以下几种类型

  • localhost: 只允许该用户在本地登录, 不能远程登录
  • %: 允许在除本机之外的任何一台机器远程登录
  • 192.168.52.32: 具体的 IP 表示只允许该用户从特定IP登录.

password 指定该用户登录时的密码

flush privileges 表示刷新权限变更

修改密码

运行以下命令可以修改用户密码:

update mysql.user set password = password('zhangsannew') where user = 'zhangsan' and host = '%';
flush privileges;
Copier après la connexion

删除用户

运行以下命令可以删除用户:

drop user zhangsan@'%';
Copier après la connexion

drop user 命令会删除用户以及对应的权限, 执行命令后你会发现 mysql.user 表和 mysql.db 表的相应记录都消失了.

常用命令组

创建用户并授予指定数据库全部权限

适用于Web应用创建MySQL用户

create user zhangsan identified by 'zhangsan';
grant all privileges on zhangsanDb.* to zhangsan@'%' identified by 'zhangsan';
flush privileges;
Copier après la connexion

创建了用户 zhangsan , 并将数据库 zhangsanDB 的所有权限授予 zhangsan。如果要使 zhangsan 可以从本机登录,那么可以多赋予 localhostTutoriel vidéo mysql

]

Ajouter un utilisateur

Connectez-vous à la base de données en tant qu'utilisateur root et exécutez la commande suivante :
grant all privileges on zhangsanDb.* to zhangsan@'localhost' identified by 'zhangsan';
Copier après la connexion
La commande ci-dessus crée l'utilisateur zhangsan, et le mot de passe est zhangsan. Vous pouvez afficher les informations du nouvel utilisateur dans mysql.user. table : 🎜rrreee

Accorder

🎜Format de commande : accorder les privilègesCode sur dbName.tableName au nom d'utilisateur@hôte identifié par "mot de passe" ;🎜rrreee🎜L'instruction ci-dessus autorise toutes les autorisations d'opération de la base de données zhangsanDb à l'utilisateur zhangsan.🎜🎜Dans le mysql.db code> table Vous pouvez afficher les informations sur les nouvelles autorisations de la base de données :🎜rrreee🎜Vous pouvez également afficher les commandes exécutées par autorisation accordée via la commande <code>show grants :🎜rrreee

privilègesCode représente le type de privilèges accordés. Les types suivants sont couramment utilisés [1]

  • tous les privilèges : tous les privilèges
  • select : autorisation de lecture
  • supprimer : autorisation de suppression
  • mettre à jour : mettre à jour l'autorisation
  • li>
  • create : créer des autorisations
  • drop : supprimer les autorisations de base de données et de table de données

dbName.tableName indique la bibliothèque ou la table spécifique à laquelle les autorisations sont accordées. Les options suivantes sont couramment utilisées.

  • . : accorde des autorisations à toutes les bases de données de ce serveur de base de données
  • dbName.* : Accorde des autorisations à toutes les tables de la base de données dbName
  • dbName.dbTable : accorde des autorisations à la table dbTable dans la base de données dbName

username@host code> représente l'utilisateur accordé et l'adresse IP qui permet à l'utilisateur de se connecter. L'hôte a les types suivants

  • localhost : seul l'utilisateur est autorisé à se connecter Connexion locale, pas de connexion à distance
  • % : Permet la connexion à distance depuis n'importe quelle machine sauf cette machine
  • 192.168.52.32 : une <code>IP spécifique signifie que l'utilisateur n'est autorisé à se connecter qu'à partir d'une adresse IP spécifique.
  • password Spécifie le mot de passe permettant à l'utilisateur de se connecter

    vider les privilèges Indique les modifications apportées aux autorisations d'actualisation strong>

    Changer le mot de passe strong>

    🎜Exécutez la commande suivante pour modifier le mot de passe de l'utilisateur :🎜rrreee

    Supprimer l'utilisateur

    🎜Exécutez la commande suivante pour supprimer l'utilisateur :🎜rrreee🎜drop user La commande supprimera l'utilisateur et les autorisations correspondantes. Après avoir exécuté la commande, vous constaterez que les enregistrements correspondants dans le mysql.usercode> et la table <code>mysql.db ont disparu.🎜

    Groupe de commandes communes

    Créer des utilisateurs et accorder des autorisations complètes à la base de données spécifiée

    🎜Convient aux applications Web pour créer des utilisateurs MySQL🎜rrreee 🎜Utilisateur créé zhangsan et accordé toutes les autorisations sur la base de données zhangsanDB à zhangsan. Si vous souhaitez que zhangsan puisse se connecter à partir de cette machine, vous pouvez accorder des autorisations supplémentaires à localhost : 🎜rrreee🎜[Recommandations associées : 🎜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!

    Étiquettes associées:
    source:cnblogs.com
    Déclaration de ce site Web
    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
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal