版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库原理与应用快速入门7.1关于事务7.2关于并发控制第7章
了解事务管理7.1.1了解事务的概念与特征7.1.2了解MySQL事务模式7.1.3了解事务的工作原理7.1关于事务7.1.4了解数据库系统的故障种类7.1.5了解事务恢复的实现技术7.1.1了解事务的概念与特征任何程序在计算机系统中运行时难免会出现故障,数据库系统也是如此。为了消除故障造成的严重后果,保障数据库处于正确的状态,数据库中引入了事务(Transaction)的概念。所谓事务,指的是一个单元的工作。这个单元中可能包括很多工作步骤,它们要么全做,要么全不做。从SQL语句的角度看,在数据库中,事务包含一条或多条SQL语句,这些语句,要么全部执行,要么全部撤销。7.1.1了解事务的概念与特征事务具有以下四个特征:1)原子性:一个事务是一个逻辑工作单位,是一个不可分割的整体。事务中包含的操作要么都做,要么都不做。2)一致性:事务的执行结果必须使数据库从一个一致性状态变为另一个一致性状态。一致性与原子性密切相关。3)隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间互不干扰。4)持续性:一个事务成功完成之后,它对数据库的所有更新都是永久的。7.1.2了解MySQL事务模式在MySQL中,事务提交方式有自动提交和手动提交两种。1、自动提交自动提交事务是MySQL默认的事务提交方式。每条单独的语句都是一个事务。在与MySQL连接后,如不做更改,则采用自动提交模式。7.1.2了解MySQL事务模式2、手动提交用户可以执行以下命令,设置MySQL为手动提交事务模式。SET@@autocommit=0;该设置只对当前的MySQL命令行窗口有效,打开一个新的窗口时,默认还是自动提交事务模式。7.1.2了解MySQL事务模式使用SQL语句来定义事务,即为显示事务。SQL定义显示事务的语句有三条:STARTTRANSACTIONCOMMITROLLBACK7.1.2了解MySQL事务模式事务以STARTTRANSACTION开始,以COMMIT或ROLLBACK结束。COMMIT表示提交,当事务所有操作能够正常执行后,提交所有操作,事务执行完成。ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,操作不能继续执行,系统将事务中对数据库所有已完成的操作全部撤消,回滚到事务开始时的状态。7.1.2了解MySQL事务模式【例7-1】假设在sc表中,学号为“210101001”的学生由于某些原因不选004号课程而改选002号课程,并且该课程的考试成绩为80分。尝试完成以下操作,验证事务的特征。1、首先将当前MySQL命令行窗口设置为手动提交事务模式:SET@@autocommit=0;2、查看学生初始选课状态:SELECT*FROMscWHEREstuId='210101001'ANDcorId='004';7.1.2了解MySQL事务模式【例7-1】假设在sc表中,学号为“210101001”的学生由于某些原因不选004号课程而改选002号课程,并且该课程的考试成绩为80分。尝试完成以下操作,验证事务的特征。3、将更改课程号和成绩这两个操作定义为一个事务:7.1.2了解MySQL事务模式【例7-1】假设在sc表中,学号为“210101001”的学生由于某些原因不选004号课程而改选002号课程,并且该课程的考试成绩为80分。尝试完成以下操作,验证事务的特征。4、由于操作人员输入错误,把“80”分误写为“8o”分(为英文字母o),导致出错:7.1.2了解MySQL事务模式【例7-1】假设在sc表中,学号为“210101001”的学生由于某些原因不选004号课程而改选002号课程,并且该课程的考试成绩为80分。尝试完成以下操作,验证事务的特征。数据修改的结果如图7-5所示。从图中可以看到,第一步操作将课程号修改成“002”也没有执行。这正好体现了事务的特性。7.1.3了解事务的工作原理事务确保数据的一致性和可恢复性。在数据库进行故障恢复时,事务具有重要意义。事务的工作原理如右图所示。7.1.3了解事务的工作原理事务开始后,事务包含的所有操作都将写到事务日志文件中。这些操作一般有两种:一种是针对数据的操作,一种是针对任务的操作。针对数据的操作,例如插入、删除和修改,这是典型的事务操作,处理的对象是大量的数据。针对任务的操作,例如创建索引,这些任务操作在事务日志中记录一个标志,用于表示执行了这种操作。当事务撤销时,系统自动执行这些操作的逆操作,将数据恢复到事务开始前的状态,保证系统的一致性。7.1.4了解数据库系统的故障种类数据库里可能出现的各种故障包括:1、事务内部的故障事务故障是某些对数据库进行操作的事务违反了系统设定的条件,如输入数据错误、运算溢出等,使事务未能正常完成就终止(例7-1中出现的故障就属于这种故障)。2、系统故障系统故障主要是由于数据库服务器在运行过程中,突然发生操作系统错误、停电等原因造成的非正常中断,系统正在执行的事务被突然中断,内存缓冲区中的数据全部丢失,但硬盘、磁带等外设上的数据未受损失(上面分析的银行突然停电就属于这种故障)。7.1.4了解数据库系统的故障种类数据库里可能出现的各种故障包括:3、介质故障介质故障是由于硬件的可靠性较差出现的存储介质发生物理损坏。数据库的数据全部或部分丢失,破坏性较大。此外,还有计算机病毒等也会对数据库系统构成危害。7.1.5了解事务恢复的实现技术数据恢复技术的基本原则是建立冗余。这就是说,数据库中任何一部分被破坏的或不正确的数据可以根据存储在别处的冗余数据来重建。建立冗余数据最常用的技术是数据备份和登记日志文件。通常数据库系统中,这两种方法是一起使用的。7.1.5了解事务恢复的实现技术1、数据备份数据备份指的是数据库管理员定期地将整个数据库拷贝到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本。数据备份可以分为静态备份和动态备份。7.1.5了解事务恢复的实现技术1、数据备份静态备份是在系统中没有事务在执行时进行的备份。备份操作开始时,数据库处于一致性状态,而备份期间不允许对数据库的任何存取、修改活动。静态转储简单,但转储必须等待正运行的事务结束才能进行,同样,新的事务必须等待转储结束才能执行。显然,这会降低数据库的可用性。动态备份是指备份期间允许对数据进行存取或修改。即备份和事务可以并发执行。动态备份可克服静态备份的缺点,它不用等待正在运行的用户事务结束,也不会影响新事务的运行。但是,备份结束时后备副本上的数据并不能保证正确有效。7.1.5了解事务恢复的实现技术1、数据备份备份还可以分为海量备份和增量备份两种方式。海量备份是指每次备份全部数据库。增量备份则指每次只备份上一次备份后更新过的数据。从恢复角度看,使用海量备份得到的后备副本进行恢复一般说来会更方便些。但如果数据库很大,事务处理又十分频繁,则增量备份方式更实用更有效。7.1.5了解事务恢复的实现技术2、登记日志文件事务日志文件是用来记录事务对数据库的更新操作的文件。数据库系统自动登记日志文件。不同数据库系统采用的事务日志文件格式并不完全相同。概括起来事务日志文件主要有两种格式:以记录为单位和以数据为单位。7.1.5了解事务恢复的实现技术对于以记录为单位的事务日志文件,文件中需要登记的内容包括:(1)各个事务的开始(SRARTTRANSACTION)标记(2)各个事务的结束(COMMIT或ROLLBACK)标记(3)各个事务的所有更新操作这里每个事务开始的标记、每个事务结束的标记和每个更新操作均作为事务日志文件中的一个日志记录
(logrecord)。7.1.5了解事务恢复的实现技术对于以数据块为单位的事务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中职第二学年(畜牧兽医)动物疫病防治2026年阶段测试题及答案
- 2025年大学地理信息科学(地理信息系统设计)试题及答案
- 2025年高职导游服务(应急事件处理)试题及答案
- 高二地理(人口城市)2025-2026年上学期期末测试卷
- 高职第一学年(机械设计制造及其自动化)机械设计基础2026年阶段测试题
- 深度解析(2026)《GBT 18227-2000航空货运集装板 技术条件和试验方法》(2026年)深度解析
- 深度解析(2026)《GBT 18114.3-2010稀土精矿化学分析方法 第3部分:氧化钙量的测定》
- 深度解析(2026)《GBT 17546.1-1998信息技术 开放系统互连 无连接表示协议 第1部分协议规范》(2026年)深度解析
- 钢筋混凝土结构耐久性检测规范
- 河北科技学院《机械精度设计》2025-2026学年第一学期期末试卷
- 2025广西柳州城市职业学院人才招聘28人(公共基础知识)测试题附答案解析
- 22064,22877,23041,11041,59969《管理学基础》国家开放大学期末考试题库
- 加盟连锁经营政策分析与实施方案
- 电缆路径检测协议书
- 《烹饪工艺学》期末考试复习题库(附答案)
- 片区供热管网连通工程可行性研究报告
- 课件《法律在我身边》
- 2025年文职仓库保管员考试题及答案
- 2025年重庆市大渡口区事业单位考试试题
- 管道施工围挡施工方案
- 《军用关键软硬件自主可控产品名录》(2025年v1版)
评论
0/150
提交评论