小五六资源网,小五六博客

mysql新建用户赋予权限

发布:小五六资源网 2020年6月8日 3:44 星期一分类: Linux

一、环境:

CentOS 6.8
mysql 5.6

二、背景

给外包的工作人员提供我司某台服务器的 mysql 中某个数据库的访问权限。

之所以要做限制,是防止他们对我司其他的数据库非法进行操作。

三、正文

1、使用 root 管理员登陆 mysql

mysql -uroot -p123456;

2、创建新用户

create user 'user1'@'%' identified by '07fa533360d9';

'%' - 所有情况都能访问
‘localhost’ - 本机才能访问
’111.222.33.44‘ - 指定 ip 才能访问

注:修改密码

update mysql.user set password=password('新密码') where user='user1';

这个时候访问,是除了默认生成的两个数据库,看不到任何其它的数据库

3、给该用户添加权限

grant all privileges on 想授权的数据库.* to 'user1'@'%';

all 可以替换为 select,delete,update,create,drop

这个时候访问,比刚才看到的数据库多出了一个刚刚添加的

4、删除用户

Delete FROM mysql.user Where User='user1';

四、可能遇到的问题

flush privileges;

如何出现以下错误
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
解决方式:update mysql.user set authentication_string=password('***') where user='***';
温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

发表评论: