数据库课件第十章数据库安全性和并发控制.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数据库课件第十章数据库安全性和并发控制.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课件 第十 安全性 并发 控制
- 资源描述:
-
1、12021/2/21第十章第十章 数据库的安全性和并发控制数据库的安全性和并发控制22021/2/21第一节第一节 数据库的安全性数据库的安全性一、数据库的安全性一、数据库的安全性 所谓数据库的安全性是指保护数据所谓数据库的安全性是指保护数据以防止不合法的使用所造成的数据泄漏、以防止不合法的使用所造成的数据泄漏、更改和破坏。更改和破坏。32021/2/21二、二、数据库的安全级别数据库的安全级别1、应用环境级、应用环境级2、操作系统级、操作系统级3、网络级、网络级4、数据库系统级、数据库系统级42021/2/21三、三、存取控制存取控制1、用户权限:用户使用数据库的方式。、用户权限:用户使用数
2、据库的方式。数据对象数据对象操作权限操作权限属性列属性列SELECT、INSERT、DELETE、UPDATE、ALL PRIVILEGES视图视图SELECT、INSERT、DELETE、UPDATE、ALL PRIVILEGES基本表基本表SELECT、INSERT、DELETE、UPDATE、ALTER、INDEX、ALL PRIVILEGES数据库数据库CREATETAB52021/2/212、授予权限、授予权限GRANT,.ON TO ,.WITH GRANT OPTION;WITH GRANT OPTION 指获得权限的用指获得权限的用户可以将权限授予其他用户。户可以将权限授予其他
3、用户。62021/2/21 例例1 DBA把把Orders数据库中建立基本表数据库中建立基本表的权限授予用户的权限授予用户USER001和和USER002。GRANT CREATETAB ON OrdersTO USER001,USER002;72021/2/21 例例2 DBA把查询把查询Customer表的权限授予表的权限授予用户用户USER003。GRANT SELECTON CustomerTO USER003;82021/2/21 例例3 USER002把对把对Product表的查询和修改表的查询和修改Stock属性列的权限授予用户属性列的权限授予用户USER004,并允,并允许许U
4、SER004将此权限再转授给其他用户。将此权限再转授给其他用户。GRANT SELECT,UPDATE(Stock)ON ProductTO USER004WITH GRANT OPTION92021/2/21 例例4 DBA把对把对Product表的所有权限授表的所有权限授予所有用户予所有用户GRANT ALL PRIVILEGESON ProductTO PUBLIC注:此处注:此处“PUBLIC”指所有用户。指所有用户。102021/2/213、收回权限、收回权限REVOKE ,.ON FROM ,.;112021/2/21 例例1 将将USER003对对Customer表的查表的查询权
5、限收回。询权限收回。REVOKE SELECTON CustomerFROM USER003122021/2/21REVOKE SELECT,UPDATE(Stock)ON ProductFROM USER004 例例2 将将USER004 对对Product表的查询和修表的查询和修改改Stock属性列的权限收回。属性列的权限收回。132021/2/21 例例3 DBA把把USER001和和USER002在在Orders数据库中建立基本表的权限收回。数据库中建立基本表的权限收回。REVOKE CRATETABON OrdersFROM USER001,USER002;142021/2/21第二
6、节第二节 数据库的并发控制数据库的并发控制一、事务一、事务 事务是数据库的逻辑工作单位,由用户定事务是数据库的逻辑工作单位,由用户定义的一组操作序列组成,序列中的操作要义的一组操作序列组成,序列中的操作要么全做,要么全不做。么全做,要么全不做。1、事务的定义、事务的定义152021/2/212、事务的特性、事务的特性(1)原子性:事务中的操作要么不做,要么)原子性:事务中的操作要么不做,要么全做;全做;(2)一致性:数据库从一个一致状态变为另)一致性:数据库从一个一致状态变为另一个一致状态;一个一致状态;(3)隔离性:任一事务的执行不受其他事务)隔离性:任一事务的执行不受其他事务的干扰;的干扰
7、;(4)持续性:事务完成后其对数据库的更改)持续性:事务完成后其对数据库的更改不会因系统故障而丢失。不会因系统故障而丢失。162021/2/21二、事务的串行调度和并发调度二、事务的串行调度和并发调度1、调度、调度 事务的执行次序。事务的执行次序。2、串行调度:、串行调度:多个事务按先后顺序依次执行。多个事务按先后顺序依次执行。3、并行调度:、并行调度:多个事务同时交叉执行。多个事务同时交叉执行。172021/2/214、实例、实例 有两个事务有两个事务T1和和T2,它们都要订购某,它们都要订购某日某车次的日某车次的2张硬卧火车票和张硬卧火车票和1张软卧火车张软卧火车票,这两个事务都包含下列操
8、作票,这两个事务都包含下列操作182021/2/21read(A);/从数据库中读出硬卧车票剩余数量从数据库中读出硬卧车票剩余数量AA=A-2;/订购了订购了2张车票张车票,write(A);/将新的剩余硬卧车票数量将新的剩余硬卧车票数量A写回数据库写回数据库write(B);/将新的剩余软卧车票数量将新的剩余软卧车票数量B写回数据库写回数据库read(B);/从数据库中读出剩余软卧车票数量从数据库中读出剩余软卧车票数量BB=B-1;/订购了订购了1张车票张车票192021/2/21对事务对事务T1和和T2执行串行操作执行串行操作(硬、软卧车票初始值为硬、软卧车票初始值为100和和50)事务事
9、务T1事务事务T2数据库中的值数据库中的值read(A)A=A-2write(A)read(B)B=B-1write(B)read(A)A=A-2write(A)read(B)B=B-1write(B)A=50A=48B=100B=99A=48A=46B=99B=98串行调度串行调度1:先:先T1后后T2事务事务T1事务事务T2数据库中的值数据库中的值read(A)A=A-2write(A)read(B)B=B-1write(B)read(A)A=A-2write(A)read(B)B=B-1write(B)A=50A=48B=100B=99A=48A=46B=99B=98串行调度串行调度2:
10、先:先T2后后T1202021/2/21对事务对事务T1和和T2执行并发操作执行并发操作(硬、软卧车票初始值为硬、软卧车票初始值为100和和50)事务事务T1事务事务T2数据库中的值数据库中的值read(A)A=A-2write(A)read(B)B=B-1write(B)read(A)A=A-2write(A)read(B)B=B-1write(B)A=50A=48A=46B=100B=99B=98并发调度并发调度1事务事务T1事务事务T2数据库中的值数据库中的值read(A)A=A-2write(A)read(B)B=B-1write(B)read(A)A=A-2write(A)read(
11、B)B=B-1write(B)A=50A=48B=100A=48A=46B=100B=99B=99并发调度并发调度2212021/2/21 6、结论、结论 事务串行调度的结果总是正确的,事务串行调度的结果总是正确的,而事务并发调度的结果则不一定完全正确。而事务并发调度的结果则不一定完全正确。当多个事务并发调度的结果与串行当多个事务并发调度的结果与串行调度的结果相同时,称该并发调度是可串调度的结果相同时,称该并发调度是可串行化的调度。行化的调度。222021/2/21三、事务并发执行所带来的问题三、事务并发执行所带来的问题1、丢失修改、丢失修改时刻时刻事务事务T1事务事务T2数据库中的数据库中的
展开阅读全文