头歌数据库课程实验(角色管理)

news2025/6/4 11:07:10

第1关:创建角色

任务描述
本关任务:创建角色 role1@localhost。

相关知识
为了完成本关任务,你需要掌握MySQL的角色管理。

角色信息存放在数据库 mysql 的 user 表中。
user 表中字段:

Host:可以登陆数据库的主机地址;
User:用户登陆名;
authentication_string :加过密的登陆密码;
_priv 结尾的字段:表明用户的权限。
增加角色
增加角色方式一语法:

create role 角色名@主机名 //角色名区分大小写,主机名连接来自的主机;
[ , 角色名@主机名[ ,... ] //可以同时创建多个数据库角色,中间用逗号分隔。 
 
增加角色示例:

使用 create role 语句增加一个角色R2,只允许在本地主机登陆。

create role R2@localhost;  
要求
根据提示,在右侧编辑器补充代码。创建角色role1,只允许在本地主机登录。

测试说明
开始你的任务吧,祝你成功!

  use teachingdb;
 /****请在此编写代码,操作完毕之后点击评测******/
 
 /**********Begin**********/
  
  create role role1@localhost; 
 /**********End**********/

第2关:给角色授权

任务描述
本关任务:系统用户 root 授权 role1@localhost 角色对teachingdb数据库中student表的select 权限。

相关知识
为了完成本关任务,你需要掌握 MySQL 的权限管理。使用grant语句为角色授权。

grant 语句的基本语法格式
grant 语句的基本语法格式:

 GRANT priv_type [(column_list)] [, priv_type [(column_list)]] ...
 ON [object_type] priv_level
 TO user_or_role [, user_or_role] ...;
priv_type:权限类型;
column_list:字段列表;
object_type:目标对象类型,有三种:TABLE,FUNCTION,PROCEDURE;
privi_level:权限级别;
user_or_role:用户名或角色名。

示例:使用 grant 语句为角色role1授权,该角色对所有的数据有查询、插入的权限。

grant select,insert on *.* to role1@localhost; 
查看权限
语法:

show grants for  rolename@hostname 
例子: 查用角色 role1 的权限信息

 show grants for  role1@localhost;
要求
根据提示,在右侧编辑器补充代码,系统用户 root 授权 role1@localhost角色对teachingdb数据库中student表的select权限。

测试说明
编写代码后,点击测评即可。

开始你的任务吧,祝你成功!

  use teachingdb;
 /****请在此编写代码,操作完毕之后点击评测******/
 
 /**********Begin**********/
  GRANT SELECT ON teachingdb.student TO 'role1'@'localhost';
 /**********End**********/

第3关:指定用户角色

任务描述
本关任务:系统用户root指定user1@localhost用户role1@localhost角色。

相关知识
为了完成本关任务,你需要掌握 MySQL 的角色管理。
将一个角色授予其他的角色或用户使用grant命令。

grant 语句的基本语法格式
grant 语句的基本语法格式:

 GRANT role [, role] ...
 TO user_or_role [, user_or_role] ...
 [WITH ADMIN OPTION];
示例:使用 grant 语句为用户U1指定角色role1。

grant role1@localhost  to U1@localhost; 
查看权限
语法:

show grants for  username@hostname 
例子: 查用用户U1的权限信息

 show grants for  U1@localhost;
要求
根据提示,在右侧编辑器补充代码,系统用户 root指定user1@localhost用户role1@localhost角色。

测试说明
编写代码后,点击测评即可。

开始你的任务吧,祝你成功!

   use teachingdb;
 /****请在此编写代码,操作完毕之后点击评测******/
 
 /**********Begin**********/
  
  GRANT 'role1'@'localhost' TO 'user1'@'localhost';

 /**********End**********/

第4关:回收用户角色

任务描述
本关任务:回收用户user1@localhost的role1@localhost角色。

相关知识
回收用户角色使用revoke语句。
REVOKE rolename FROM username;

要求
根据提示,在右侧编辑器补充代码,回收用户user1@localhost的role1@localhost角色。

开始你的任务吧,祝你成功!

 use teachingdb;
 /****请在此编写代码,操作完毕之后点击评测******/
 
 /**********Begin**********/
  
  REVOKE 'role1'@'localhost' FROM 'user1'@'localhost';
 /**********End**********/

第5关:删除角色

任务描述
本关任务:删除角色 role1@localhost。

相关知识
删除角色语法:

drop role 角色 [ , 角色] .... 
示例:使用 drop role 语句删除可以在任意主机上登陆的角色leader。

drop role 'leader'@'%'; 
要求
根据提示,在右侧编辑器补充代码。删除角色role1@localhost。

测试说明
开始你的任务吧,祝你成功!

use teachingdb;
 /****请在此编写代码,操作完毕之后点击评测******/
 
 /**********Begin**********/
  
  drop role 'role1'@localhost;
 /**********End**********/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2396196.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多模态大语言模型arxiv论文略读(102)

Chat2Layout: Interactive 3D Furniture Layout with a Multimodal LLM ➡️ 论文标题:Chat2Layout: Interactive 3D Furniture Layout with a Multimodal LLM ➡️ 论文作者:Can Wang, Hongliang Zhong, Menglei Chai, Mingming He, Dongdong Chen, Ji…

高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例

高端装备制造项目通常涉及多专业协同、长周期交付和高风险管控,因此系统需具备全生命周期管理能力。例如,北京奥博思公司出品的 PowerProject 项目管理系统就是一款非常适合制造企业使用的项目管理软件系统。 国内某大型半导体装备制造企业与奥博思软件达…

AI炼丹日志-22 - MCP 自动操作 Figma+Cursor 自动设计原型

MCP 基本介绍 官方地址: https://modelcontextprotocol.io/introduction “MCP 是一种开放协议,旨在标准化应用程序向大型语言模型(LLM)提供上下文的方式。可以把 MCP 想象成 AI 应用程序的 USB-C 接口。就像 USB-C 提供了一种…

[嵌入式实验]实验四:串口打印电压及温度

一、实验目的 熟悉开发环境在开发板上读取电压和温度信息使用串口和PC通信在PC上输出当前电压和温度信息 二、实验环境 硬件:STM32开发板、CMSIS-DAP调试工具 软件:STM32CubeMX软件、ARM的IDE:Keil C51 三、实验内容 配置相关硬件设施 &…

Linux正则三剑客篇

一、历史命令 history 命令 :用于输出历史上使用过的命令行数量及具体命令。通过 history 可以快速查看并回顾之前执行过的命令,方便重复操作或追溯执行过程。 !行号 :通过指定历史命令的行号来重新执行该行号对应的命令。例如,若…

【计算机网络】第3章:传输层—可靠数据传输的原理

目录 一、PPT 二、总结 (一)可靠数据传输原理 关键机制 1. 序号机制 (Sequence Numbers) 2. 确认机制 (Acknowledgements - ACKs) 3. 重传机制 (Retransmission) 4. 校验和 (Checksum) 5. 流量控制 (Flow Control) 协议实现的核心:滑…

OpenCV CUDA模块直方图计算------在 GPU上执行直方图均衡化(Histogram Equalization)函数equalizeHist

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::cuda::equalizeHist 用于增强图像的对比度,通过将图像的灰度直方图重新分布,使得图像整体对比度更加明显。 这在医学…

构建系统maven

1 前言 说真的,我是真的不想看构建了,因为真的太多了。又多又乱。Maven、Gradle、Make、CMake、Meson、Ninja,Android BP。。。感觉学不完,根本学不完。。。 但是没办法最近又要用一下Maven,所以咬着牙再简单整理一下…

day13 leetcode-hot100-23(链表2)

206. 反转链表 - 力扣(LeetCode) 1.迭代 思路 这个题目很简单,最主要的就是了解链表的数据结构。 链表由多个节点构成,每个节点包括值与指针,其中指针指向下一个节点(单链表)。 方法就是将指…

代谢组数据分析(二十五):代谢组与蛋白质组数据分析的异同

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍蛋白质组定义与基因的关系蛋白质组学(Proteomics)检测技术蛋白质的鉴定与定量分析蛋白质“鉴定”怎么做蛋白质“定量”怎么做蛋白质鉴定与定量对比应用领域代谢组定义代谢组学(M…

002 flutter基础 初始文件讲解(1)

在学习flutter的时候,要有“万物皆widget”的思想,这样有利于你的学习,话不多说,开始今天的学习 1.创建文件 进入trae后,按住ctrlshiftP,输入Flutter:New Project,回车&#xff0c…

Launcher3体系化之路

👋 欢迎来到Launcher 3 背景 车企对于桌面的排版布局好像没有手机那般复杂,但也有一定的需求。部分场景下,要考虑的上下文比手机要多一些,比如有如下的一些场景: 手车互联。HiCar,CarPlay,An…

用wireshark抓了个TCP通讯的包

昨儿个整理了下怎么用wireshark抓包,链接在这里:捋捋wireshark 今天打算抓个TCP通讯的包试试,整体来说比较有收获,给大家汇报一下。 首先就是如何搞到可以用来演示TCP通讯的客户端、服务端,问了下deepseek,…

VR/AR 显示瓶颈将破!铁电液晶技术迎来关键突破

在 VR/AR 设备逐渐走进大众生活的今天,显示效果却始终是制约其发展的一大痛点。纱窗效应、画面拖影、眩晕感…… 传统液晶技术的瓶颈让用户体验大打折扣。不过,随着铁电液晶技术的重大突破,这一局面有望得到彻底改变。 一、传统液晶技术瓶颈…

Python使用

Python学习,从安装,到简单应用 前言 Python作为胶水语言在web开发,数据分析,网络爬虫等方向有着广泛的应用 一、Python入门 相关基础语法直接使用相关测试代码 Python编译器版本使用3以后,安装参考其他教程&#xf…

分类预测 | Matlab实现CNN-LSTM-Attention高光谱数据分类

分类预测 | Matlab实现CNN-LSTM-Attention高光谱数据分类 目录 分类预测 | Matlab实现CNN-LSTM-Attention高光谱数据分类分类效果功能概述程序设计参考资料 分类效果 功能概述 代码功能 该MATLAB代码实现了一个结合CNN、LSTM和注意力机制的高光谱数据分类模型,核心…

【解决方案-RAGFlow】RAGFlow显示Task is queued、 Microsoft Visual C++ 14.0 or greater is required.

目录 一、长时间显示:Task is queued 二、GraphRAG消耗大量Token 三、error: Microsoft Visual C 14.0 or greater is required. Get it with “Microsoft C Build Tools“ 四、ModuleNotFoundError: No module named infinity.common; infinity is not a package 五…

爬虫到智能数据分析:Bright Data × Kimi 智能洞察亚马逊电商产品销售潜力

前言 电商数据分析在现代商业中具有重要的战略价值,通过对消费者行为、销售趋势、商品价格、库存等数据的深入分析,企业能够获得对市场动态的精准洞察,优化运营决策,预测市场趋势、优化广告投放、提升供应链效率,并通…

高级前端工程师必备的 JS 设计模式入门教程,常用设计模式案例分享

目录 高级前端工程师必备的 JS 设计模式入门教程,常用设计模式案例分享 一、什么是设计模式?为什么前端也要学? 1、设计模式是什么 2、设计模式的产出 二、设计模式在 JS 里的分类 三、常用设计模式实战讲解 1、单例模式(S…

2023年电赛C题——电感电容测量装置

一、赛题 二、题目分析——损耗角正切值 对于一个正常的正弦波信号,如果通过的是一个电阻或一条导线,那么它的电流信号和电压信号是一致的(有电压才有电流),没有相位差。 但是如果正弦波经过了一个电感或电容&#xf…