【MySQL】用户管理与授权

授权命令格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"

  • 权限:select/insert/update/delete/all,多个权限之间用英文逗号隔开。
  • 数据库:数据库名称,或者使用“*”代替所有数据库。
  • 登录主机:localhost/具体IP/%,其中“%”代表除localhost之外的所有IP

 

快速参考:

grant all on database1.* to user1@’%’ identified by ‘pass’;

grant select on database2.* to user1@’%’;

grant all on database1.* to user2@’localhost’ indetified by ‘password’;

 

1、增加一个用户user_1密码为123,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

 

  grant select,insert,update,delete on *.* to user_1@"%" Identified by "123";

 

1增加的用户是十分危险的,如果知道了user_1的密码,那么他就可以在网上的任何一台电脑上登录你的MySQL数据库并对你的数据为所欲为了,解决办法见例2

 

  例2、增加一个用户user_2密码为123,让此用户只可以在localhost上登录,并可以对数据库aaa进行查询、插入、修改、删除的操作(localhost指本地主机,即MySQL数据库所在的那台主机),这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过 MYSQL主机来操作aaa库。

 

  grant select,insert,update,delete on aaa.* to user_2@localhost identified by "123";

 

取消授权命令格式:REVOKE privileges (columns) ON what FROM user

例如:revoke all on sonar_int.* from public;

猜你喜欢

转载自samjavaeye.iteye.com/blog/1405566