实验二 数据库安全性技术(8.0)

该文详细介绍了如何在MySQL中进行用户管理,包括创建、删除用户,以及如何授予不同级别的权限,如SELECT,INSERT,DELETE,UPDATE等,还涉及到了视图的创建和权限的特殊授予,如WITHGRANTOPTION。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第1关:创建用户

/* 注意:请在 begin - end代码块中作答,其他代码不要删除。*/

#1. 创建数据库用户test,密码为1234。
/*------------begin-----------*/

CREATE USER 'test' IDENTIFIED BY '1234';
/*------------end------------*/
select user,host from mysql.user where user not like 'mysql.%' and user <> 'root' and user = 'test';




#2. 删除数据库用户test。
/*------------begin-----------*/
DROP USER 'test';


/*------------end------------*/
select user,host from mysql.user where user not like 'mysql.%' and user <> 'root' and user = 'test';

第2关:用户和权限(一)

use demo;

 
#1. 用户test对dept和emp表具有SELECT的权限。
#代码开始

grant select on demo.emp to test;
grant select on demo.dept to test;
#代码结束

第3关:用户和权限(二)

use demo;

 
#1. 用户wangming对职工和部门表有INSERT和DELETE权力。
#代码开始
grant INSERT,DELETE on demo.emp to wangming;
grant INSERT,DELETE on demo.dept to wangming;

#代码结束

第4关:用户和权限(三)

use demo;

 
#1. 用户liyong对职工表有SELECT权力,对工资字段具有更新权力。
#代码开始

grant select,update(salary) on demo.emp to liyong;


#代码结束

第5关:用户和权限(四)

use demo;

 
#1. 用户zhouping具有对两个表所有权力(读、插、改、删数据),并具有给其他用户授权的权力。
#   提示:所有权力为ALL PRIVILEGES,在GRANT语句中使用WITH GRANT OPTION选项,被授权的用户就具有了再次将对象权限授予其他用户的能力。
#代码开始

grant  ALL PRIVILEGES on demo.emp to zhouping WITH GRANT OPTION;
grant  ALL PRIVILEGES on demo.dept to zhouping WITH GRANT OPTION;

#代码结束

第6关:用户和权限(五)

use demo;

 
#1. 用户yanglan具有从每个部门职工中SELECT最高工资(别名maxsal),最低工资(别名minsal),平均工资(别名avgsal)的权力,他不能查看每个人的工资。
#提示:首先创建视图(v_sal)查询每个部门职工中的最高工资,最低工资和平均工资,然后授予用户查询视图的权限。

#步骤1:创建视图v_sal
CREATE VIEW v_sal AS SELECT  dep_id,MAX(emp.`salary`)AS maxsal,MIN(emp.`salary`)AS minsal,AVG(salary) AS avgsal FROM emp,dept WHERE emp.`dep_id`=dept.`did` GROUP BY dname;

#步骤2:查看视图
DESCRIBE v_sal;



#步骤3:给用户授予查询视图的权限

grant select on v_sal to yanglan;


#代码结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TECreate

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值