网站大量收购独家精品文档,联系QQ:2885784924

5.3 数据库并发所带来的问题及解决方法.pdf

5.3 数据库并发所带来的问题及解决方法.pdf

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理与应用 本章目录 CONTENTS 数据库并发性的含义 事务及其特性 并发操作带来的不一致性 封锁协议 总结 数据库并发性的含义 数据库并发性的含义  多个用户同时访问数据库,如果对并发操作不加控制 可能会产生不正确的数据,破坏数据的完整性。  并发控制就是解决这类问题,以保持数据库中数据的 一致性,即在任何一个时刻数据库都将以相同的形式给 用户提供数据。 事务及其特性 事务(Transaction)  事务是数据库系统中执行的一个工作单位,它是由用 户定义的一组操作序列。  一个事务可以是一组SQL语句、一条SQL语句或整个 程序,一个应用程序可以包括多个事务。 定义事务的语句有三条: BEGIN TRANSACTION 事务的开始 COMMIT 事务的提交 ROLLBACK 事务的回滚 事务(Transaction) 一个事务是一个不可分割的工作单位, 事务在执行时,应该遵守“要么不做, 原子性(Atomicity) 要么全做”(Nothing or All )的原则, 即不允许完成部分的事务。 事务对数据库的作用是数据库从一个 一致状态转变到另一个一致状态。所 一致性(Consistency) 谓数据库的一致状态是指数据库中的 数据满足完整性约束。 如果多个事务并发地执行,应像各个 隔离性(Isolation) 事务独立执行一样,一个事务的执行 不能被其他事务干扰。 持久性指一个事务一旦提交,它对数据 库中数据的改变就应该是持久的,即使 持久性(Durability) 数据库因故障而受到破坏,DBMS也应 该能够恢复。 并发操作带来的不一致性 举例说明不一致问题的产生过程 例: 并发取款操作。假设存款余额R=1000元, 甲事务T1取走存款100元,乙事务T2取走存 款200元,如果正常操作,即甲事务T1执行 完毕再执行乙事务T2 ,存款余额更新后应该 是700元。但是如果按照如下顺序操作,则 会有不同的结果: 举例说明不一致问题的产生过程 01 甲事务T 1读取存款余额R= 1000元; 02 乙事务T2读取存款余额R= 1000元; 甲事务T1取走存款 100元 ,修改存款余额 03 R=R-100=900 ,把R=900写回到数据库; 乙事务T2 取走存款200 元 ,修改存款余额 04 R=R-200=800 ,把R=800写回到数据库; 结果两个事务共取走存款300元,而数据库中的存款却 只少了200元。得到这种错误的结果是由甲乙两个事务 并发操作引起的。 引起数据不一致性的主要问题 数据库的并发操作导致的数据库不一致性主要有以下三种: 丢失更新(Lost Update)

文档评论(0)

恬淡虚无 + 关注
实名认证
内容提供者

学高为师,身正为范.师者,传道授业解惑也。做一个有理想,有道德,有思想,有文化,有信念的人。 学无止境:活到老,学到老!有缘学习更多关注桃报:奉献教育,点店铺。

1亿VIP精品文档

相关文档