当前位置: 首页 > news >正文

【MySQL篇】数据库角色

前言

        数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。因此,可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程。

CREATE ROLE:创建一个角色

GRANT:给角色授权

REVOKE:收回角色的权限

WITH ADMIN OPTION:如果指定该子句,则获得某种权限的角色或用户还可以把这种权限再授予其他角色。

1、角色的创建

 一般格式:CREATE ROLE <角色>

例子: 

CREATE ROLE R1;

刚刚创建的角色是空的,没有任何权限,需要GRANT进行授权。

2、给角色授权

一般格式: 

7be075fd47bd4b77a33055a8fcb7bc72.png

 数据库管理员和用户可以利用GRANT语句将权限授予某一个或几个角色。

 

3、将一个角色授予其他的角色或用户

(1)将一个角色授予其他角色

一般格式:

GRANT <角色>[,<角色>]...
TO <角色>...
[WITH ADMIN OPTION]

 例子:

将角色R1授予角色R2,且不可传播。

GRANT R1
TO R2;

将角色R1授予角色R3,可以传播

GRANT R1
TO R3
WITH ADMIN OPTION;

(2)将一个角色授予用户

GRANT <角色>[,<角色>]...
TO <用户>...
[WITH ADMIN OPTION]

例子:

 将角色R1授予用户U1,且不可传播。

GRANT R1
TO U1;

将角色R1授予用户U2,可以传播。

GRANT R1
TO U2
WITH ADMIN OPTION;

4、角色权限回收

一般格式:

REVOKE <权限> [ , <权限>]...
ON <对象类型> <对象名>
FROM <角色> [,<角色>] ...

例子:将角色R1查询Student表的权限收回。

REVOKE SELECT
ON TABLE Student
FROM R1;

 

 

http://www.lryc.cn/news/222961.html

相关文章:

  • c++ 信奥赛编程 2050:【例5.20】字串包含
  • 用dbeaver创建一个enum类型,并讲述一部分,mysql的enum类型的知识
  • Paste v4.1.2(Mac剪切板)
  • 事件绑定-回调函数
  • Makefile 总述
  • 写给新用户-Mac软件指南篇:让你的Mac更好用
  • 03运算符综合
  • LeetCode刷题--思路总结记录
  • Nodejs
  • 【面经】spring,springboot,springcloud有什么区别和联系
  • SpringBoot Kafka消费者 多kafka配置
  • git 标签相关命令
  • 我在Vscode学OpenCV 图像运算(权重、逻辑运算、掩码、位分解、数字水印)
  • 【 Docker: 数据卷挂载】
  • windows上的静态链接和动态链接的区别与作用(笔记)
  • MySQL和Postgresql数据库备份和恢复
  • 使用MCU上的I2C总线进行传感器应用
  • 汽车标定技术(七)--基于模型开发如何生成完整的A2L文件(2)
  • ZZ308 物联网应用与服务赛题第E套
  • web相关框架
  • 安装dubbo-admin报错node版本和test错误
  • HTML使用canvas绘制海报(网络图片)
  • 20道高频JavaScript面试题快问快答
  • 【STM32】HAL库UART含校验位的串口通信配置BUG避坑
  • Python实用技巧:将 Excel转为PDF
  • 【面经】讲一下你对jvm和jmm的了解
  • 《网络协议》03. 传输层(TCP UDP)
  • ZooKeeper调优
  • 改进YOLOv5:结合ICCV2023|动态蛇形卷积,构建不规则目标识别网络
  • 开发知识点-NodeJs-npm/Pnpm/Vite/Yarn包管理器