0


MySQL添加用户及用户权限管理

1、用户

<1> 用户信息

MySQL中的用户,都存储在系统数据库mysql的user表中

字段解释:

  • host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆
  • user: 用户名
  • authentication_string: 用户密码通过password函数加密后的

<2> 创建用户

create user '用户名'@'登陆主机/ip' identified by '密码';

实例:

create user 'zhu'@'localhost' identified by 'Mysql_Zhu123';

<3> 删除用户

drop user '用户名'@'主机名'

实例:

<4> 修改用户密码

自己改自己密码

set password=password('新的密码');

**root用户修改指定用户的密码 **

set password for '用户名'@'主机名'=password('新的密码');

2、用户权限管理

MySQL数据库提供的权限列表可以参考这篇文章MySQL user权限表详解

<1> 查看用户权限

grant show grants for '用户名'@'主机名'

实例:

<2> 给用户授权

grant 权限列表 on 库.对象名 to '用户名'@'登陆位置' [identified by '密码']

**说明: **

  • 权限列表,多个权限用逗号分开
  • . : 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)
  • 库.* : 表示某个数据库中的所有数据对象(表,视图,存储过程等)
  • identifified by可选。 如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户

实例:

给用户zhu赋予test2数据库下所有文件的select权限

grant select on test2.* to 'zhu'@'localhost';

此时我们切换到zhu用户就有了select权限了,如图:

**注意:如果发现赋权限后,没有生效,执行如下指令: **

flush privileges;

<3> 回收权限

revoke 权限列表 on 库.对象名 from '用户名'@'登陆位置'

实例:

回收zhu用户对数据库test2的select权限

revoke select on test2.* from 'zhu'@'localhost';

此时使用select就会提示没有权限

标签: mysql 数据库 sql

本文转载自: https://blog.csdn.net/C_Trip/article/details/128502993
版权归原作者 小朱同学.. 所有, 如有侵权,请联系我们删除。

“MySQL添加用户及用户权限管理”的评论:

还没有评论