如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验报告(2011/2012学年第二学期)课程名称数据库系统A实验名称DBMS的数据库保护实验时间2012年5月24日指导单位计算机学院软件工程系指导教师李玲娟学生姓名牟博琳班级学号B09040103学院(系)计算机学院专业计算机科学与技术实验报告实验名称DBMS的数据库保护指导教师李玲娟实验类型验证实验学时2实验时间2012.5.24实验目的和要求(1)巩固事务的概念(2)正确理解并发的概念及锁机制(3)熟悉DBMS的安全机制二、实验环境(实验设备)硬件:微机软件:DB2EXPRESS三、实验原理及内容实验原理基于第七章的相关内容。实验内容如下:1.创建操作系统OS的用户U1和U2.(1)右键单击“我的电脑”图标,在弹出的菜单中选择“管理”项,出现“计算机管理”窗口。(2)在窗口左边的面板中,展开“系统工具”,然后展开“本地用户和组”文件夹。右击“用户”文件夹并选择“新建用户”菜单项。(3)在“用户”对话框中,输入以下信息。在“用户名”框中,输入U1。“全名”框中和“描述”框,可以不输入信息。在“密码”和“确认密码”框中,输入ibmdb2admin。取消“用户下次登陆时需修改密码”选项。最后,单击“创建”按钮创建新用户。(4)确保使用ControlCenter的高级视图。切换到高级视图的方法是:从ControlCenterTools菜单中选择CustomizeControlCenter菜单项,选择Advanced选项并单击“确定”按钮。(5)在ControlCenter左边面板中的对象树中,依次展开所有数据库〉STUDENT>Tables。(6)将所需的特权授予刚才创建的用户。在STUDENT数据库的表列表中,右键单击图书表并选择“特权”菜单项,这时会显示“表特权”对话框。(7)单击“添加用户”按钮并选择刚才创建的U1用户。单击“确定”按钮关闭“添加用户”对话框。(8)U2的创建与U1相似。2.以实验一中DB2ADMIN用户创建的数据库(假设为STUDENT)中的图书表作为访问对象,熟悉存取控制机制。(1)所有用户具有对书名、作者、出版单位三个属性的查询权限,但不能查询其他属性。createview图书_viewasselect书名,作者,出版单位from图书grantselecton图书_viewtopublic(2)使用户U1拥有对图书表的删除权限和对单价的修改权限,并具备转授这些权限的权力。grantdelete,update(单价)on图书toU1withgrantoption(3)用户U1授予用户U2对图书表的删除权限。connecttoB070304userU1using123456grantdeleteonDB2ADMIN.图书toU2(4)回收用户U1和用户U2对图书表的删除权限。connecttoB030408userDB2ADMINusingnjuptrevokedeleteon图书fromU1revokedeleteon图书fromU23.为U1用户授予对DB2ADMIN用户的图书表的所有操作权grantALLon图书toU1withgrantoption实验报告4.观察多事务并发时的数据库保护效果,理解锁机制的工作原理(1)分别以DB2ADMIN和U1用户连接到数据库。打开另一个命令行处理器,键入:connecttoB030408userU1using123456创建时用的口令两个命令行处理器都键入:updatecommandoptionsusingcoff(2)DB2ADMIN将图书表中图书编号为‘0003’的图书单价上调5%,此即事务1。Update图书set单价=单价*1.05where图书编号='0003'(3)U1用户将图书表中图书编号为‘0003’的图书单价上调5%,此即事务2。updateDB2ADMIN.图书set单价=单价*1.05where图书编号='0003'(4)观察发生什么现象,分析为什么,找出解决办法。DB2ADMIN可以成功更改单价U1用户输入命令行回车后,命令不执行。原因是,当前该数据项被DB2ADMIN加上X锁,拒绝U1用户的更改。解决方法:DB2ADMIN用户输入commit命令,此时U1用户命令被执行。(5)DB2ADMIN分别输入commit和rollback命令时,观察两个命令行处理器界面的信息及变化,并用select语句查看图书表中的单价属性的值的变化。select单价from图书where图书编号='0003'select单价fromDB2ADMIN.图书where图书编号='0003'验证comm