MySQL创建用户、给用户授权

2019-03-06 07:11:05   MySQL

MySQL权限管理是对用户行为进行一定的约束,不同的权限可以执行不同的操作,其中拥有所有权限并且拥有授予别人权限能力的就是root用户,可以看做是上帝,很无敌的那种,哈哈。 这么做也是为了数据库安全考虑,以防数据丢失或者被破坏。

常见权限介绍

名称 描述
SELECT 查询拿取数据权限
INSERT 插入表数据权限
UPDATE 更新表数据权限
DELETE 删除表数据权限
CREATE 创建数据库、表或索引权限
DROP 删除数据库或表权限
GRANT 赋予权限
INDEX 索引权限
ALTER 修改表权限

授权语句

授予用户所有权限,这可能是你现在最想要的语句

grant all privileges on *.* to vien@'%'

这句话是授予一个已经存在的、用户名为vien的用户,通过所有的host连接都有所有的权限。反正看起来就很厉害的样子。 完事记得刷新下权限。

flush privileges;

当然,如果没有用户,想直接创建用户并授予所有权限怎么办呢,只要加个小尾巴就好了

grant all privileges on *.* to vien@'%' identified by "password";

就是在这加了个密码而已,如果再给他可以授予别人权限的能力,再加个小尾巴

grant all privileges on *.* to vien@'%' identified by "password" with grant option;

下面详细介绍一下以上提到的命令一些关键的地方和语法:

  • ALL PRIVILEGES 表示你有任何权限,总之,为所欲为-为所欲为-为所欲为...
  • ON 指定针对哪些库、表授权。
  • *.* 中前面的*号指定库,后面的*号指定表,例如 blog.article 指的是blog数据库的article表,而*则表示所有
  • TO 后面接的是要被授权的用户。
  • vien@'%' 前面是用户名vien,@后可以使IP地址或地址段、主机名、域名等,而%表示everywhere,就是你从哪连都行。
  • IDENTIFIED BY 指定登录密码。
  • WITH GRANT OPTION 表示该用户有权限把自己的权限授权给别人。

查看权限

查看当前用户权限

show grants

查看某个用户权限

show grants for 'vien'@'%';

查看用户

use mysql;
select host,user,password from user;

回收权限

revoke update on *.* from 'vien'@'%';

删除用户

drop user 'vien'@'%';

用户名重命名

rename user 'vien'@'%' to 'luvvien'@'%';

设置、修改密码

关于忘记密码、设置密码、修改密码请参考: MySQL忘记密码

vien.tech版权所有,允许转载,但转载请注明出处和原文链接: https://viencoding.com/article/112
欢迎小伙伴们在下方评论区留言 ~ O(∩_∩)O
文章对我有帮助, 点此请博主吃包辣条 ~ O(∩_∩)O

猜你喜欢


评论

There are no comments yet.
未登录

登录后即可发表评论

登录或注册

亲情非友情链接