数据库实验二数据库的日常维护和安全性管理.docx
- 文档编号:10213417
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:21
- 大小:407.98KB
数据库实验二数据库的日常维护和安全性管理.docx
《数据库实验二数据库的日常维护和安全性管理.docx》由会员分享,可在线阅读,更多相关《数据库实验二数据库的日常维护和安全性管理.docx(21页珍藏版)》请在冰豆网上搜索。
数据库实验二数据库的日常维护和安全性管理
北京邮电大学数据库系统概论
专业:
信息工程
学生姓名:
×××
指导教师:
×××
完成时间:
××××
实验二:
数据库的日常维护和安全性管理
目录
一、实验目的2
二、实验内容3
三、实验环境3
四、实验结果3
1、数据库备份3
①完整备份3
②差异备份4
2、数据库还原5
3、数据库导入7
4、数据库导出10
5、创建用户14
6、用户授权16
①一般授权16
②级联授权17
7、用户权利回收18
五、实验分析19
1、完整与差异19
2、新建查询的选择19
3、覆水难收?
20
4、语法的变迁20
六、实验总结21
1、实验目的
1、熟悉通过SQL语句和DBMS对数据库进行日常简单维护操作。
2、 熟悉数据库的安全性管理工具和命令。
二、实验内容
1、完成数据库的备份、还原(1.5分+1.5分)
通过SQL语句,对已建立的数据库StuManagement进行备份和还原操作
2、完成数据的导入、导出操作(1分+1分):
直接在ManagementStudio中,手工对已建立的数据库StuManagement进行数据的导入和导出操作(可导为Access数据库、Excel表格等)
3、安全性管理
对已建立的数据库StuManagement进行,直接在ManagementStudio中,手工对已建立的数据库StuManagement进行安全性管理,建立2个不同的数据库用户。
(1+1分)
4、完成“授权和权利回收”的操作例子(1.5分+1.5分)
分别用grant和revoke语句,对已建立的用户,进行授权和权利回收的操作,并运行验证。
实验环境
三、实验环境
软件版本:
SQLServer2012
4、实验结果
1、数据库备份
①完整备份
图1:
完整备份消息提示
图2:
完整备份文件查看
源代码:
--将数据库StuManagement完整备份到磁盘文件上去
BACKUP
DATABASEStuManagement
TODISK='D:
\SQLDATA\StuManagement_backup1.bak';
②差异备份
图3:
差异备份消息提示
图4:
差异备份文件查看
2、数据库还原
图5:
还原之前(无teacher表)
图6:
还原之后(重新出现teacher表)
代码:
--从备份StuManagement_backup1中还原数据库StuManagement
RESTORE
DATABASEStuManagement
FROMDISK='D:
\SQLDATA\StuManagement_backup1.bak'
WITHRECOVERY,REPLACE;
--只能选择master数据库
3、数据库导入
图7:
选择数据源
图8:
选择目的地
图9:
导入成功信息提示
图10:
SQLServer查看导入的表test
4、数据库导出
图11:
选择导出数据源
图12:
选择导出目的地
图13:
选择导出内容
图14:
导出成功提示
图15:
资源管理器查看
图16:
Excel查看
5、创建用户
图17:
新建用户
图18:
新建用户设置
图19:
新建用户查看
6、用户授权
①一般授权
图20:
对USER1授权之前进行UPDATE操作失败信息提示
图21:
授权后成功修改数据
代码:
--将修改表Student的权利授予用户USER1
GRANTUPDATE
ONStudent
TOUSER1;
②级联授权
图22:
USER1只有使用UPDATE的权限,不具有传播该权限的权限
图23:
级联授权后用户USER2具有UPDATE的权限
代码:
--将修改表Student的权利授予用户USER1,并且USER1能够传播该权限
GRANTUPDATE
ONStudent
TOUSER1
WITHGRANTOPTION;
--通过USER1将修改表Student的权利授予用户USER2
GRANTUPDATE
ONStudent
TOUSER2;
7、用户权利回收
图24:
非级联收回用户USER1的UPDATE权限失败
代码:
--非级联回收用户USER1的UPDATE权限
REVOKEUPDATE
ONStudent
FROMUSER1;
图25:
级联收回权限后用户USER1不能修改数据
图26:
级联收回权限后用户USER2也不能修改数据
代码:
--级联回收用户USER1的UPDATE权限
REVOKEUPDATE
ONStudent
FROMUSER1
CASCADE;
5、实验分析
1、完整与差异
在实验中尝试了完整备份和差异备份两种不同的备份方式,从资源管理器中可以查看到,差异备份的文件大小要远远小于完整备份的文件大小,这与理论相符。
2、新建查询的选择
在执行备份和还原的操作过程中,我发现备份操作的新建查询“可用数据库”既可以是master系统数据库,也可以是Stumanagement数据库本身。
然而在还原数据库的时候,则“可用数据库”只能是master,如果选择Stumanagement本身的话,则会提示以下错误。
图27:
还原错误信息提示
3、覆水难收?
非常有意思的是当我赋予用户USER1对表Student的SElECT权限之后,却发现我收不回来了,用户USER1一直都能查看Student表的内容,这问题让我纠结了很久。
后来经过查找资料才知道,原来SQLServer2012新建用户的时候默认是public角色(见下图),而public角色本身就具有查看所有数据的权限。
所以说那权限根本就不是我赋予用户USER1的,当然就无法收回了。
图28:
新建用户默认为public角色
4、语法的变迁
书本上无论是赋予还是收回权限都是需要指明对象的类型的,比如
代码:
--将修改表Student的权利授予用户USER1
GRANTUPDATE
ONtableStudent
TOUSER1;
然而,在SQLServer2012中,该用法却会报错,正确的用法应该是将类型去掉,比如:
代码:
--将修改表Student的权利授予用户USER1
GRANTUPDATE
ONStudent
TOUSER1;
6、实验总结
这次实验让我对SQLServer2012有了更深的了解,特别是碰到的一些课本上没有提到的问题更是让我花了不少时间去解决,收获良多。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验 日常 维护 安全性 管理