MySQL安全性语言
文章为作者原创,未经许可,禁止转载。 -Sun Yat-sen University 冯兴伟
实验2:安全性语言
安全性实验包含两个实验项目,其中1个为必修,1个为选修。自主存取控制实验为设计型实验项目,审计实验为验证型实验项目,选做一个即可。
实验2.1 自主存取控制实验
(1)实验目的
掌握自主存取控制权限的定义和维护方法。
(2)实验内容和要求
定义用户、角色,分配权限给用户、角色,回收权限,以相应的用户名登录数据库验证权限分配是否正确。选择一个应用场景,使用自主存取控制机制设计权限分配。可以采用两种方案。方案一:采用SYSTEM超级用户登录数据库,完成所有权限分配工作,然后用相应用户名登陆数据库以验证权限分配正确性;验证权限分配之前,请备份好数据库;针对不同用户所具有的权限,分别设计相应的SQL语句加以验证。
(3)实验重点和难点
实验重点:定义角色,分配权限和回收权限。
实验难点:实验方案二实现权限的再分配和回收。
a) 创建用户fengxingwei,密码为1993,主机登陆为localhost:

在workbench中查看可以看到用户fengxingwei存在,说明创建成功。

输入show grants for 'fengxingwei'@'localhost'; 查看用户fengxingwei的权限暂时如下:

使用system超级用户root给用户fengxingwei赋予所有权限all privileges

继续show grants for 'fengxingwei'@'localhost';查看可以发现用户fengxingwei权限如下:

b) 退出root,以fengxingwei作为用户登陆。


c) 开始验证分配权限正确性。在root下原本的4个数据库及权限如下:

在fengxingwei用户下可以发现其拥有和root一样的权限,可以看到root创建的4个数据库。

d) 以用户fengxingwei登陆,进行select权限检查,下图可以看出select成功。

进行insert权限检查,下图可看出insert成功:


进行update权限检查,可以通过下图看出update成功:


进行delete权限检查,可以通过下图看出delete成功:


e) 登陆root,回收root给fengxingwei的权限

可以验证fengxingwei其权限被收回:

切换以fengxingwei登录,可以看到已无权看到root创建的数据库。

MySQL安全性语言的更多相关文章
- Mysql C语言API编程入门讲解
原文:Mysql C语言API编程入门讲解 软件开发中我们经常要访问数据库,存取数据,之前已经有网友提出让鸡啄米讲讲数据库编程的知识,本文就详细讲解如何使用Mysql的C语言API进行数据库编程. ...
- MySQL入门详解(一)---mysql的语言
MySQL语言分为:DCL(数据库控制语言).DDL(数据库定义语言).DQL(数据库查询语言).DML(数据库操作语言),这一节我们先从mysql的语言开始. DCL:数据库控制语言,用来设置数据库 ...
- Mysql Lua语言拼接
[1]Mysql Lua语言拼接实例 (1)基本语句 local sql = "select * from task_control where cycle_id = '" .. ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- java安全性语言
java通过所谓的沙箱安全模型保证了其安全性,以下我们就来看看java提供的安全沙箱机制. 组成沙箱的基本组件例如以下: 1.类装载器结构: 2.class文件检验器: 3.内置于java虚拟机(及语 ...
- 数据库mysql基础语言--各模式的含义
1. 欢迎信息 欢迎来到 MySQL 镜像.命令以 ; 或 g 结束.你的 MySQL 连接编号为 2.服务器版本:5.1.47-社区 MySQL 社区服务器(GPL) 版权(C)2000.2010, ...
- mysql数据库语言分类
MySQL的sql语言分类DML.DQL.DDL.DCL. MySQL的sql语言分类DML.DQL.DDL.DCL. SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语 ...
- Mysql数据库语言学习的路线
对于我们数据库的学习,不管是测试人员还是开发人员以及我们的DBA来说重点都是SQL:但是我们的SQL可以分多少类型,学习重点又是在哪里呢,本文仅仅针对测试人员来展开说明: SQL:structure ...
- MySQL sql语言的笔记
3 MySQL数据库 3.1 mysql数据存储结构 先数据库,再表,再有数据 4 数据库管理 4.1 查询所有数据库 mysql> show databases; +------------- ...
随机推荐
- AngularJS学习--- 事件处理(Event Handlers) ng-click操作 step 10
本文主要通过介绍ng-click方法来对angularjs中的事件处理方法做个了解. 1.切换目录 git checkout step- npm start 2.效果 点击右边的小图片,那么左边框中将 ...
- ObjC.class-cluster
class cluster In a class cluster, only an abstract superclass is public. Allocating an instance actu ...
- C#签名 NX90
1.在VS中添加D:\Siemens\NX90\ \NXSigningResource.res文件,右击文件属性,将资源变为 嵌入式资源,即生成方式 2.编译生成exe文件或者dll文件,例如:xxx ...
- Linux -- Centos 下配置LNAMP 服务器环境
1.Mysql centos 7 下mysql被替换掉,如有需要请看另一篇: centos 6.5下: yum install mysql mysql-server mysql-devel 启动mys ...
- 关于把A表中的数据复制到B表中(整理)
如果A,B两个表中没有重复数据且表结构一样可以直接 insert into B select * from A 如果结构不一样可以 insert into B(字段列表),select 字段列表 fr ...
- JavaScript-setTimeout
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- Apache 常用伪静态配置
1. /a/b?c=d => index.php?_a=a&_m=b&c=d 2. /xxx/detail-yyy.html => index.php?_a=xxx& ...
- 状态伪类选择器(E::selection)
E::selection选择器: E::selection{background:#FF6600; color:#fff;} //当文字被选中时,背景是红色,文字是白色 E::-moz-s ...
- iOS AFNetWorking 下载pdf文档
+ (void)downLoadPdf:(NSString *)url pdf_id:(NSString *)pdf_id block:(APIFilePath)pdfFilePath { NS ...
- WPF 虚拟键盘
之前做了一款WPF虚拟键盘,调用Win32的API,可以模拟键盘事件. 现将代码分享如下: 按键布局如下: <Button Name="> <StackPanel Orie ...