数据库系统原理及MySQL应用教程实验九数据库的安全机制管理

实验9:数据库的安全机制管理

一、实验目的

1.理解My SQL的权限系统的工作原理。

2.理解My SQL账户及权限的概念。

3.掌握管理My SQL账户和权限的方法。

4.学会创建和删除普通用户的方法和密码管理的方法。

5.学会如何进行权限管理。

二、实验内容

1.验证性实验:

2.设计性试验:

三、实验步骤与实验结果

(一)验证性实验

1.使用root用户创建Testuser1用户,初始密码设置为123456。让该用户对所有数据库拥有SELECT、CREATE、DROP、SUPER权限。

GRANT SELECT,create,drop,super ON *.* TO Testuser1@localhost identified by '123456' with grant option; 

2.创建Testuser2用户,该用户没有初始密码。

CREATE USER Testuser2@localhost;

3.用Testuser2用户登录,将其密码修改为000000。

SET PASSWORD = PASSWORD('000000'); 

4.用Testuser1用户登录,为Testuser2用户设置CREATE和DROP权限。

GRANT create,drop ON *.* TO Testuser2@localhost ;

5.用Testuser2用户登录,验证其拥有的CREATE和DROP权限。

CREATE TABLE student.t1(id int);

DROP TABLE jxgl.t1;

6.用root用户登录,收回Testuser1用户和Testuser2用户的所有权限。

REVOKE ALL ON *.* FROM Testuser1@localhost,Testuser2@localhost;

7删除Testuser1用户和Testuser2用户。

DROP USER Testuser1@localhost,Testuser2@localhost;

8.修改root用户的密码。

UPDATE mysql.user SET authentication_string=PASSWORD("1234") WHERE user='root';

(二)设计性试验

1.将使用root用户创建examl用户,初始密码设置为123456。让该用户对所有数据库拥有SELECT、CREATE、DROP、SUPER和GRANT权限。

GRANT SELECT,create,drop,super ON *.* TO examl@localhost identified by '123456' with grant option; 

2.创建用户exam2,该用户没有初始密码。

CREATE USER exam2@localhost;

3.用exam2登录,将其密码设置为686868。

UPDATE mysql.user SET authentication_string = password("686868") WHERE user='exam2';

4.用examl登录,为exam2设置CREATE和DROP权限。

GRANT create,drop ON *.* TO exam2@localhost ;

5.用root用户登录,收回examl和exam2的所有权限。

revoke all on *.* from examl@localhost,exam2@localhost;

6.删除examl用户和exam2用户。

DROP USER examl@localhost,exam2@localhost;

7.修改root用户的密码。

UPDATE mysql.user SET authentication_string=PASSWORD("12345") WHERE user='root';

四、观察与思考

1、新创建的MySQL用户能否在其他机器上登录MySQL数据库?

答:能,可以用IP地址,回环地址127.0.0.1。
grant all on . to username@’%’ identified by ‘password’;

五、实验要求

按要求完成,详细记录操作步骤,书写实验报告。所有实验环节均由每位学 生独立完成,认真记录操作过程,严禁抄袭他人实验结果。

六、实验总结

通过本次实验了学习了MySQL的权限管理,给其他用户的增删改查的权限在方便其他用户操作的同时又增加了数据库的安全性。

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
本文档为数据库上机实验报告,是自己认认真真一步一步写的,报告包含试验中的具体步骤,过程以及代码和实验结果截图,和实验总结。 实验实验题目: 数据库管理系统的使用 实验目的: 掌握SQL SERVER2005的使用数据库设计的一般方法。 实验内容: (1)SQL SERVER2005的使用 (2)数据库的设计过程并利用SQL SERVER2005建立数据库实验实验题目: 数据库的定义 实验目的:掌握数据表建立、修改、删除、索引的SQL语句。 实验内容: (1)数据表的建立 (2)数据表的修改 (3)数据表的删除 (4)数据表的索引建立 为S表的DEPT建立唯一索引 (5)视图的建立与删除 建立一个计算机系学生基本信息视图CSV(SNO,SNAME,SEX,AGE) 查询1983年以后出生的计算机系学生基本信息。 建立一个计算机系学生成绩视图JSGV(SNO,CNO,GRADE)。 查询计算机系学生选课多于3门的学生学号。 查询计算机系学生2号课不及格的学生学号和成绩。 实验实验题目: 数据表的操作 实验目的: 掌握数据表数据操作的SQL语句。 实验内容: SQL语句插入数据操作 SQL语句修改数据操作 SQL语句删除数据操作 SQL语句查询数据操作 维护数据SQL语句: (1)在学生表中插入一新生信息(‘200213808’,’HUJING’,’女’,22,’计算机’) (2)删除数据库中学号为’200213801’的退学学生有关信息。 (3)将计算机系学生2号课成绩全部提高5%。 查询数据SQL语句: (4)统计有学生选修的课程门数。 (5)统计HU老师所授每门课程的学生平均成绩。 (6)统计所有选修人数多于20的课程号和选课人数,并按人数降序排列,若人数相等,则按课程号升序排列。 (7)检索所有缓考即成绩为NULL的同学学号、姓名和缓考课程号。 (8)检索‘OS’课成绩高于该课平均成绩的同学学号。 (1) 检索计算机系女生的学号和姓名。 (2) 检索全体学生姓名、出生年份和所在系。 (3) 检索未选修任何课程的学生学号。 (4) 检索WANG老师所授课程号、课程名。 (5) 检索所有姓LI同学的基本信息。 (6) 检索选修‘DATABASE’课程的学生学号。 (7) 检索年龄介于LIPING同学年龄和28岁之间的学生基本信息。 (8) 检索选修TIAN老师所授全部课程的学生学号。 实验实验题目: T-SQL编程 实验目的: 掌握T-SQL语句的使用实验内容: 1.定义一个表变量,用来存储两名学生的学号,姓名,所在系。 2.编写一个自定义的函数,该函数接受一个学生姓名,返回其学生表中基本信息及选课情况。 3.试用CASE语句输出学生表中各年龄段的学生人数。 4.编写存储过程,以系别作为参数,统计指定系别的人数,并作为存储过程的输出。 实验题目: 数据库的完整性 实验目的: 掌握数据库的完整性约束定义,完整性检查及违约处理方式。 掌握触发器的定义及使用实验内容: 1. 定义S, C表的完整性约束 2. 定义SC表的完整性约束,要求当其被参照表发生删除操作时,违约处理的方式为级联,当其被参照表发生修改操作时,违约处理的方式为拒绝。 3. 触发器 ☆ 建立一DML触发器,每当学生的成绩发生更新时,将更新的学号,成绩存入g-log表内 ☆ 建立一个INSTEAD OF触发器,每当修改课程表中记录时,利用触发器动作替代修改操作。 ☆ 建立一个DDL 触发器,不允许删除数据库中表,并作出响应。 实验实验题目: 数据库安全实验目的: 掌握SQL SERVER 2005的安全控制机制 实验内容: 1. 创建登录 创建lg1,lg2,并设定口令 2. 定义用户 定义user1,user2,user1以lg1登录,user2以lg2登录,user1定义角色ddl_admin,datareader,datawriter 3. 掌握SQL SERVER 2005架构和用户分离的概念 为user1创建架构u1,并建立test表,通过授权模式的方法,授权给user2表访问test的权限 4. 数据库的授权、收权语句 ☆ 将查询SC表和修改GRADE属性的权限授予用户user1。 ☆ 将对表S的插入权限授予用户user2,并允许他将此权限授予其他用户。 ☆ 收回所有用户对表S的插入权限。 实验实验题目: 数据库的设计 实验目的: 掌握数据库的概念结构设计和逻辑结构与设计,掌握ER图的表示方法即如何将ER模型转化为关系模型 1.学校有若干系,每个系有若干班级和教研室,每个教研室有若干教师,其中有教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课有若干学生选修。 2.某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料组成,不同零件所用的材料可以相同。有些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
数据库系统原理MySQL应用教程》是一本专门讲解数据库系统原理MySQL应用教程,是第2版的PDF版本。数据库系统原理是指数据库系统的基本概念、模型和设计理论,MySQL是一种常用的关系型数据库管理系统。 这本教程的目的是帮助读者了解数据库系统原理,并通过MySQL应用这些原理进行实践。教程分为两个主要部分:数据库系统原理MySQL应用。 在数据库系统原理部分,教程首先介绍了数据库系统的基本概念和三级模式体系结构。然后,详细解释了关系数据库模型和关系代数,以及关系数据的规范化和逻辑设计。此外,还讨论了事务和并发控制的基本原理,以及数据库安全和完整性的管理。 在MySQL应用部分,教程介绍了MySQL的安装和配置,并详细介绍了MySQL的基本操作,包括创建、查询、修改和删除数据表,以及使用SQL语句进行数据查询和更新。此外,还介绍了MySQL的高级功能,如存储过程、触发器和索引的使用。 这本教程适合那些对数据库系统MySQL应用感兴趣的读者,无论是学生、数据库开发人员还是系统管理员。读者通过学习这本教程,可以了解数据库系统原理MySQL的基本应用,掌握数据库设计和管理的基本技能,从而更好地应用数据库技术解决实际问题。 如果您对该教程感兴趣,可以在互联网上搜索相关信息,找到适合您的下载方式。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小孙同学1024

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

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

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

打赏作者

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

抵扣说明:

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

余额充值