数据库权限的设置

目录

1、授予权限(grant)

1.1 例子:允许用户zhangsan在本地查询yun1数据库中所有表的数据记录,但禁止查询其他数据库中的表的记录。

1.2 允许用户lili在所有终端远程连接mysql,并拥有全部权限。

2、 查看权限

3、 撤销权限(revoke)

 3.1 例子:撤销lisi的权限


1、授予权限(grant)

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'来源地址' [IDENTIFIED BY '密码'];

#权限列表:
用于列出授权使用的各种数据库操作,以逗号进行分隔,如“select, insert, 
update”。使用"all"表示所有权限,可授权执行任何操作。

#数据库名.表名:
用于指定授权操作的数据库和表的名称,其中可以使用通配符"*"。
例如,使用“kgc.*"表示授权操作的对象为school数据库中的所有表。

#'用户名@来源地址':
用于指定用户名称和允许访问的客户机地址,即谁能连接、能从哪里连接。来源地址可以是域名、IP地址,还可以使用“%”通配符,表示某个区域或网段内的所有地址,如“%.xyw.com"、“192.168.80.%”等。

#IDENTIFIED BY:
用于设置用户连接数据库时所使用的密码字符串。
在新建用户时,若省略“IDENTIFIED BY"部分,则用户的密码将为空。

1.1 例子:允许用户zhangsan在本地查询yun1数据库中所有表的数据记录,但禁止查询其他数据库中的表的记录。

GRANT select ON yun1.* TO 'zhangsan'@'localhost' IDENTIFIED BY 'abc123';

 

1.2 允许用户lili在所有终端远程连接mysql,并拥有全部权限。

GRANT ALL PRIVILEGES ON *.* TO 'lisi'@'%' IDENTIFIED BY 'abc';

 

 

授权用户权限是all privilege。这个all privilege都有哪些权限?all privilege权限如下:

  • insert(插入数据)
  • select (查询数据)
  • update (更新表的数据)
  • delete(删除表中数据)
  • create (创建库,表)
  • drop(删除库,表)
  • refernces
  • index(建立索引)
  • alter(更改表属性)
  • create temp orary tableslock tables (锁表)
  • execute
  • create view (创建视图)
  • show view(显示视图)
  • create routine(创建存储过程)
  • alter routine(修改存储过程)
  • event(事件)
  • trigger on(创建触发器)
     

2、 查看权限

SHOW GRANTS FOR 用户名@来源地址;

3、 撤销权限(revoke)

REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址;

 3.1 例子:撤销lisi的权限

REVOKE ALL ON *.* FROM 'lisi'@'%';

 

 

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值