admin管理员组文章数量:1567923
事务处理技术。事务是一列的数据库操作,是数据库应用程序的基本逻辑单元。事务处理技术主要包括数据库恢复技术和并发控制技术。数据库恢复机制和并发控制机制是数据库管理系统的重要组成部分。
事务的基本概念
1、事物
所谓事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。在关系数据库中,一个事务可以是是一条SQL语句、一组SQL语句或整个程序。
事务和程序是两个概念。一般的讲,一个程序包含多个事务。
事务的开始与结束可以由用户显式控制。如果用户没有显式地定义事务,则由数据库管理系统按默认规定自动划分事务。在SQL中,定义事务的语句一般有三条:
Begin transaction;//开始事务
Commit; //执行成功,提交
Rollback; //执行失败,回滚
事务通常是以 Begin transaction开始,以Commit或Rollback结束。
Commit表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。
Rollback表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。这里的操作是指对数据库的更新操作。
2、事务的特性
事务具有四个特性:原子性、一致性、隔离性、持续性。
(1)原子性:事务是数据库的逻辑工作单位,事务中包含的诸操作要么都做,要么都不做。
(2)一致性:事务执行的结果必须是使数据库从一个一致性的状态变到另一个一致性的状态。因此当数据库只包含成功事务的提交的结果时,就说数据处于一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成的事务对数据库所作的修改有一部分已经写入数据库,这时数据库就处于一个不正确的状态,或者数是一个不一致的状态。
(3)隔离性:一个事务的执行不能被其他事务干扰。即一个事务的内部操作即使用的数据对其他并发事务时隔离的,并发执行的各个事务之间不能相互干扰。
(4)持续性:持续性也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就是永久性的。接下来的其他操作或故障不应该对其执行的结果有任何的影响。
数据库的恢复概述
尽管数据库系统中采取了各种措施来防止数据库的安全性和完整性被破坏,保证并发事务的正确执行,但是计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏仍是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或者部分数据丢失。因此数据库管理系统必须具有把数据库从错误状态恢复到某一已知正确状态(亦称为一致状态或完整状态)的功能,这就是数据库的恢复。恢复子系统是数据库管理系统的一个重要组成组分,而且相当庞大,常常占整个系统代码的10%以上。数据库管理系统所采用的恢复技术是否行之有效,不仅对系统的可靠程度起着决定性作用,而且对系统的运行效率也有很大的影响,是衡量系统性能优劣的重要指标。
故障的种类
1、事务内部的故障
事务内部的故障有的可能是通过事务程序本身发现的,有的是非预期的,不能由事务程序处理。
【例】银行转账事务,这个事务把一笔金额从一个账户甲转给另一个账户乙。
begin transaction
读账
版权声明:本文标题:数据库系统概论--(第七章)数据库恢复技术 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1726035493a1052879.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论