1、第六章 数据库的事务处理与数据恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复 6.1 事务管理的基本概念 6.2 并发控制 6.3 数据库恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复 事务是用户定义的数据库操作序列,这些操作可作为事务是用户定义的数据库操作序列,这些操作可作为一个完整的工作单元。一个事务内的所有语句是一个一个完整的工作单元。一个事务内的所有语句是一个整体,要么全部执行,要么全部不执行。即事务是不整体,要么全部执行,要么全部不执行。即事务是不可再分的原子性工作。可再分的原子性工作。6.1 事务管理的基本概念6.1.1 事务(Transaction)的概念(1
2、 1)事务开始()事务开始(BEGIN_TRANSACTIONBEGIN_TRANSACTION)。事务开始执行。)。事务开始执行。(2 2)事务读写()事务读写(Read/WriteRead/Write)。事务进行数据操作(活跃)。)。事务进行数据操作(活跃)。(3 3)事务结束()事务结束(END_TRANSACTIONEND_TRANSACTION)。事务完成所有的读)。事务完成所有的读/写操写操作。作。(4 4)事务交付()事务交付(COMMIT_TRANSACTIONCOMMIT_TRANSACTION)。事务完成所有的读)。事务完成所有的读/写操作,并保存操作结果。写操作,并保存操
3、作结果。数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.1.2 6.1.2 事务的状态事务的状态6.1.3 6.1.3 事务的特性事务的特性(1 1)原子性()原子性(AtomicityAtomicity)(2 2)一致性()一致性(ConsistencyConsistency)(3 3)隔离性()隔离性(IsolationIsolation)(4 4)持久性()持久性(DurabilityDurability)上述的四个特性也简上述的四个特性也简称为称为ACIDACID特性特性 数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.1.4 SQL Server中的事务SQL Ser
4、verSQL Server的事务分为两种类型:系统提供的事务和用的事务分为两种类型:系统提供的事务和用户定义的事务户定义的事务 是指在执行某些语句时,一条语句就是一个事务是指在执行某些语句时,一条语句就是一个事务 用户定义的事务 BEGIN TRANSACTIONBEGIN TRANSACTION:事务的开始标记。:事务的开始标记。COMMIT TRANSACTIONCOMMIT TRANSACTION:事务的结束标记。:事务的结束标记。ROLLBACK TRANSACTION ROLLBACK TRANSACTION:回滚:回滚 SAVE TRANSACTION :设置保存点设置保存点 RO
5、LLBACK TRANSACTION ROLLBACK TRANSACTION :将事务回滚到保:将事务回滚到保存点位置存点位置 系统提供的事务系统提供的事务数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.2.1 6.2.1 并发操作引起的问题并发操作引起的问题 对事务的并发执行如果不加以控制,可能会导致数据库中对事务的并发执行如果不加以控制,可能会导致数据库中数据的不一致性。数据的不一致性。数据库的事务处理与数据恢复数据库的事务处理与数据恢复丢失修改(丢失修改(Lost UpdateLost Update)不可重复读(不可重复读(Unrepeatable ReadUnrepeatab
6、le Read)读读“脏脏”数据(数据(Dirty ReadDirty Read)数据库的事务处理与数据恢复数据库的事务处理与数据恢复1丢失修改(Lost Update)调度时刻调度时刻事务事务T1事务事务T2t1读读A16 t2 读读A16t3A=A-1写回写回A15 t4 A=A-2写回写回A14(覆盖了覆盖了T1对对A的修改的修改)2不可重复读(Unrepeatable Read)调度时刻调度时刻事务事务T1事务事务T2t1读读A50读读B100求和求和150 t2 读读B100BB*2写回写回B=200t3读读A50读读B200求和求和250(验算不对)(验算不对)数据库的事务处理与数
7、据恢复数据库的事务处理与数据恢复3.读“脏”数据(Dirty Read)调度时刻调度时刻事务事务T1事务事务T2t1 读读B100BB*2写回写回B=200t2读读B200(读入读入T2的脏数据的脏数据)t3 ROLLBACK(B恢复为恢复为100)产生上述三类数据不一致的主要原因是并发操作破坏了事务产生上述三类数据不一致的主要原因是并发操作破坏了事务的隔离性的隔离性 数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.2.2 6.2.2 封锁封锁数据库的事务处理与数据恢复数据库的事务处理与数据恢复 所谓封锁就是事务所谓封锁就是事务T T在对某个数据对象,例如表、记录等操在对某个数据对象,
8、例如表、记录等操作之前,先向系统发出请求,对其加锁。加锁后事务作之前,先向系统发出请求,对其加锁。加锁后事务T T就对该就对该数据有了一定的控制,在事务数据有了一定的控制,在事务T T释放它的锁之前,其他的事务释放它的锁之前,其他的事务不能更新此数据对象不能更新此数据对象 被封锁的数据对象的范围可大可小,可以是属性、元组,也被封锁的数据对象的范围可大可小,可以是属性、元组,也可以是关系、数据库等,我们把封锁对象的大小称为可以是关系、数据库等,我们把封锁对象的大小称为封锁粒度封锁粒度(1 1)排它锁)排它锁:排它锁(排它锁(X X锁)又称为写锁。若事务锁)又称为写锁。若事务T T对数对数据对象据
9、对象A A加上加上X X锁,则只允许锁,则只允许T T读取和修改读取和修改A A,其他任何,其他任何事务都不能读取和修改事务都不能读取和修改A A,也不能再对,也不能再对A A 加任何类型的加任何类型的锁,直到锁,直到T T释放释放A A上的锁上的锁.(2 2)共享锁)共享锁:共享锁。共享锁(共享锁。共享锁(S S锁)又称为读锁,若事锁)又称为读锁,若事务务T T对数据对象对数据对象A A加上加上S S锁,则事务锁,则事务T T可以读可以读A A,但不能修,但不能修改改A A;其他事务只能再对;其他事务只能再对A A加加S S锁,而不能加锁,而不能加X X锁,直到锁,直到T T释放释放A A
10、上的上的S S锁。这就保证了其他事务可以读锁。这就保证了其他事务可以读A A,但在,但在事务事务T T释放释放A A上的上的S S锁之前不能对锁之前不能对A A做任何修改做任何修改 1封锁的类型数据库的事务处理与数据恢复数据库的事务处理与数据恢复 所谓封锁协议就是在对数据库加锁、持锁和释放锁时所谓封锁协议就是在对数据库加锁、持锁和释放锁时所约定的一些规则。例如,应何时申请所约定的一些规则。例如,应何时申请X X锁或锁或S S锁、持锁、持锁时间、何时释放等。不同的封锁规则形成了不同的锁时间、何时释放等。不同的封锁规则形成了不同的封锁协议,下面介绍三级封锁协议。封锁协议,下面介绍三级封锁协议。(1
11、 1)一级封锁协议。)一级封锁协议。(2 2)二级封锁协议。)二级封锁协议。(3 3)三级封锁协议。)三级封锁协议。2.保证数据一致性的封锁协议三级封锁协议数据库的事务处理与数据恢复数据库的事务处理与数据恢复 一级封锁协议是事务一级封锁协议是事务T T在修改数据之前必须先对其加在修改数据之前必须先对其加X X锁,直到事务结束才释放。锁,直到事务结束才释放。一级封锁协议一级封锁协议一级封锁协议可有效防止丢失修改,并保证事务一级封锁协议可有效防止丢失修改,并保证事务T T是可恢是可恢复的复的数据库的事务处理与数据恢复数据库的事务处理与数据恢复 二级封锁协议是在一级封锁协议加上事务二级封锁协议是在一
12、级封锁协议加上事务T T对要读取对要读取的数据加的数据加S S锁,读完后即可释放锁,读完后即可释放S S锁锁二级封锁协议二级封锁协议除防止了丢失修改还可进一步防止读二级封锁协议除防止了丢失修改还可进一步防止读“脏脏”数据。数据。数据库的事务处理与数据恢复数据库的事务处理与数据恢复 三级封锁协议是事务三级封锁协议是事务T T在读取数据之前必须先对其加在读取数据之前必须先对其加S S锁,在要修改数据之前必须先对其加锁,在要修改数据之前必须先对其加X X锁,直到事务结锁,直到事务结束后才释放所有的锁束后才释放所有的锁三级封锁协议三级封锁协议解决了不可重复读问题三级封锁协议解决了不可重复读问题数据库的
13、事务处理与数据恢复数据库的事务处理与数据恢复封锁封锁协议协议X锁锁S锁锁不丢失不丢失修改修改不读脏不读脏数据数据可重可重复读复读一级一级事务全程加锁事务全程加锁不加锁不加锁 二级二级事务全程加锁事务全程加锁事务开始加锁,读完即释放事务开始加锁,读完即释放 三级三级事务全程加锁事务全程加锁事务全程加锁事务全程加锁表表6-1 不同级别的封锁协议不同级别的封锁协议数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.2.3 6.2.3 封锁出现的问题及解决方法封锁出现的问题及解决方法 在多个事务请求对同一数据封锁时,总是使某一事务在多个事务请求对同一数据封锁时,总是使某一事务等待的情况称为活锁。等
14、待的情况称为活锁。1 1活锁活锁例如:如果事务例如:如果事务T1T1封锁了数据封锁了数据R R后,后,T2T2也请求封锁也请求封锁R R,于是,于是T2T2等待。接着等待。接着T3T3也请求封锁也请求封锁R R。假如。假如T1T1释放释放R R上的锁后,系上的锁后,系统首先批准了统首先批准了T3T3的请求,的请求,T2T2只得继续等待。接着只得继续等待。接着T4T4也请求也请求封锁封锁R R,T3T3释放释放R R上的锁后,系统又批准了上的锁后,系统又批准了T4T4的请求,的请求,T2T2有可能就这样永远等待下去。有可能就这样永远等待下去。数据库的事务处理与数据恢复数据库的事务处理与数据恢复
15、多个并发事务处于相互等待的状态,其中的每一个事多个并发事务处于相互等待的状态,其中的每一个事务都在等待它们中的另一个事务释放封锁,这样才可务都在等待它们中的另一个事务释放封锁,这样才可以继续执行下去,但任何一个事务都没有释放自己已以继续执行下去,但任何一个事务都没有释放自己已获得的锁,也无法获得其他事务已拥有的锁,所以只获得的锁,也无法获得其他事务已拥有的锁,所以只好相互等待下去,这就产生了死锁。好相互等待下去,这就产生了死锁。2 2死锁死锁数据库的事务处理与数据恢复数据库的事务处理与数据恢复 一次封锁法一次封锁法:一次封锁法要求每个事务必须一次将所有一次封锁法要求每个事务必须一次将所有要使用
16、的数据全部加锁,否则该事务就不能继续执行要使用的数据全部加锁,否则该事务就不能继续执行 顺序封锁法顺序封锁法:顺序封锁是预先对数据对象规定一个封锁顺序封锁是预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁顺序,所有事务都按这个顺序实行封锁 数据库的事务处理与数据恢复数据库的事务处理与数据恢复3.3.死锁的预防死锁的预防 目前在数据库中解决死锁问题主要有两类方法目前在数据库中解决死锁问题主要有两类方法:采取一采取一定措施来预防死锁的发生定措施来预防死锁的发生;允许发生死锁,然后采用一允许发生死锁,然后采用一定手段定期诊断系统中有无死锁,若有则解除之定手段定期诊断系统中有无死锁,若有则
17、解除之.(1 1)死锁的预防)死锁的预防(2 2)死锁的检测与解除)死锁的检测与解除 数据库系统中诊断死锁的方法是使用一个事务等待图,它数据库系统中诊断死锁的方法是使用一个事务等待图,它动态地反映所有事务的等待情况。如图所示动态地反映所有事务的等待情况。如图所示 数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.2.4 6.2.4 可串行化调度可串行化调度所谓的两段锁协议是指所有事务必须分两个阶段对数据项所谓的两段锁协议是指所有事务必须分两个阶段对数据项进行加锁和解锁。具体体现在:进行加锁和解锁。具体体现在:(1 1)在对任何数据进行读、写操作之前,事务首先要获得)在对任何数据进行读、写
18、操作之前,事务首先要获得对该数据的封锁;对该数据的封锁;(2 2)释放一个封锁之后,事务不再申请并获得对任何数据)释放一个封锁之后,事务不再申请并获得对任何数据的封锁。的封锁。为了保证并发操作的正确性,为了保证并发操作的正确性,DBMSDBMS的并发控制机制必须提的并发控制机制必须提供一定的手段保证调度是供一定的手段保证调度是可串行化可串行化的。的。两段锁两段锁(Two-Phase Two-Phase LockingLocking,简称,简称2PL2PL)协议就是保证并发调度可串行性的封)协议就是保证并发调度可串行性的封锁协议。锁协议。数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.2
19、.5 SQL Server6.2.5 SQL Server的并发控制机制的并发控制机制SQL ServerSQL Server具有多种锁,允许事务锁定不同的资源,并能自具有多种锁,允许事务锁定不同的资源,并能自动使用与任务相对应的等级锁来锁定资源对象,以使锁的成动使用与任务相对应的等级锁来锁定资源对象,以使锁的成本最小化本最小化 .1 1SQL Server SQL Server 的空间管理及锁的级别的空间管理及锁的级别SQL Server SQL Server 为使事务锁定资源最小化提供了多种方法为使事务锁定资源最小化提供了多种方法 :行级锁行级锁 页级锁页级锁 簇级锁簇级锁 表级锁表级锁
20、数据库级锁数据库级锁 数据库的事务处理与数据恢复数据库的事务处理与数据恢复2SQL Server锁的类型SQL ServerSQL Server的基本锁是共享锁(的基本锁是共享锁(S S锁)和排它锁(锁)和排它锁(X X锁)。除锁)。除基本锁之外,还有三种特殊锁:意向锁、修改锁和模式锁等基本锁之外,还有三种特殊锁:意向锁、修改锁和模式锁等 数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.3 6.3 数据库恢复数据库恢复6.3.1数据库系统的故障数据库运行过程中可能发生的故障主要有三类:数据库运行过程中可能发生的故障主要有三类:事务事务故障、系统故障和介质故障故障、系统故障和介质故障 数
21、据库的事务处理与数据恢复数据库的事务处理与数据恢复6.3.2 6.3.2 数据库备份技术数据库备份技术建立数据库备份最常用的技术是建立数据库备份最常用的技术是数据转储数据转储和和登记日志文件登记日志文件 1 1数据转储数据转储数据转储是指数据库管理员数据转储是指数据库管理员DBADBA定期或不定期地将整个数定期或不定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程据库复制到磁带或另一个磁盘上保存起来的过程.数据转储有以下几类数据转储有以下几类 :根据转储时系统状态的不同,转储分为根据转储时系统状态的不同,转储分为静态转储静态转储和和动态动态转储转储.根据转储数据量的不同还可以将数据转储分
22、为根据转储数据量的不同还可以将数据转储分为海量转储海量转储和和增量转储增量转储 .数据库的事务处理与数据恢复数据库的事务处理与数据恢复2日志文件 日志文件日志文件是用来记录事务对数据库的更新操作的文件。是用来记录事务对数据库的更新操作的文件。不同数据库采用的日志文件格式并不完全一样。概括起来不同数据库采用的日志文件格式并不完全一样。概括起来日志文件主要有两种格式:以日志文件主要有两种格式:以记录为单位记录为单位的日志文件和以的日志文件和以数据块为单位数据块为单位的日志文件的日志文件(1 1)日志文件的格式和内容)日志文件的格式和内容 以数据块为单位的日志文件的内容包括事务标识和更新的数以数据块
23、为单位的日志文件的内容包括事务标识和更新的数据,只要某个数据块中有数据被更新,就要将整个块更新前据,只要某个数据块中有数据被更新,就要将整个块更新前和更新后的内容放入日志文件和更新后的内容放入日志文件.数据库的事务处理与数据恢复数据库的事务处理与数据恢复对于以记录为单位的日志文件,日志文件中记录需要登记对于以记录为单位的日志文件,日志文件中记录需要登记的内容包括的内容包括 :各个事务的开始(各个事务的开始(BEGIN TRANSACTIONBEGIN TRANSACTION)标记。)标记。事务标识(标明是哪个事务)。事务标识(标明是哪个事务)。操作的类型(插入、删除或修改)。操作的类型(插入、
24、删除或修改)。操作对象。操作对象。更新前数据的旧值(对插入操作而言,此项为空值)。更新前数据的旧值(对插入操作而言,此项为空值)。更新后数据的新值(对删除操作而言,此项为空值)。更新后数据的新值(对删除操作而言,此项为空值)。各个事务的结束(各个事务的结束(COMMITCOMMIT或或ROLLBACKROLLBACK)标记)标记 (2)登记日志文件 为保证数据库是可恢复的,登记日志文件时必须遵循两条为保证数据库是可恢复的,登记日志文件时必须遵循两条原则:一是登记的次序严格按并行事务执行的时间次序;原则:一是登记的次序严格按并行事务执行的时间次序;二是必须二是必须先写日志文件先写日志文件,后写数
25、据库后写数据库 数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.3.3 6.3.3 数据库恢复策略数据库恢复策略具体的恢复步骤为:具体的恢复步骤为:(1 1)反向扫描文件日志(即从最后向前扫描日志文件),)反向扫描文件日志(即从最后向前扫描日志文件),查找该事务的更新操作。查找该事务的更新操作。(2 2)对该事务的更新操作执行逆操作。)对该事务的更新操作执行逆操作。(3 3)重复执行()重复执行(1 1)和()和(2 2),恢复该事务的其他更新操),恢复该事务的其他更新操作,直至读到此事务的开始标记,事务故障恢复就完作,直至读到此事务的开始标记,事务故障恢复就完成了。成了。1事务故障的
26、恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复具体的恢复步骤为:具体的恢复步骤为:(1 1)正向扫描日志文件(即从头扫描日志文件),找出)正向扫描日志文件(即从头扫描日志文件),找出在故障发生前已经提交的事务(这些事务既有在故障发生前已经提交的事务(这些事务既有BERGIN BERGIN TRANSACTION TRANSACTION 记录,也有记录,也有COMMITCOMMIT记录),将其事务标记录),将其事务标识记入重做(识记入重做(REDOREDO)队列。)队列。(2 2)对撤消队列中的各个事务进行撤消()对撤消队列中的各个事务进行撤消(UNDOUNDO)处理。)处理。(3 3
27、)对重做队列中的各个事务进行重做()对重做队列中的各个事务进行重做(REDOREDO)处理。)处理。2系统故障的恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复3介质故障的恢复介质故障是指磁盘上的物理数据和日志文件均遭破坏,这介质故障是指磁盘上的物理数据和日志文件均遭破坏,这是最严重的一种故障。恢复方法是首先重装数据库,使数是最严重的一种故障。恢复方法是首先重装数据库,使数据库管理系统能正常运行,然后利用介质损坏前对数据库据库管理系统能正常运行,然后利用介质损坏前对数据库已做的备份恢复数据库。已做的备份恢复数据库。具体的恢复步骤为:具体的恢复步骤为:(1 1)装入最新的后备数据库副本,
28、使数据库恢复到最近一)装入最新的后备数据库副本,使数据库恢复到最近一次转储时的一致性状态。次转储时的一致性状态。(2 2)装入相应的日志文件副本(转储结束时刻的日志文件)装入相应的日志文件副本(转储结束时刻的日志文件的副本),重做已完成的事务。的副本),重做已完成的事务。数据库的事务处理与数据恢复数据库的事务处理与数据恢复6.3.46.3.4SQL Server 2005SQL Server 2005的数据备份和恢复的数据备份和恢复1SQL Server 2005 恢复模式(1 1)简单恢复模式)简单恢复模式 :此模式使用数据库的完整或差异副本,此模式使用数据库的完整或差异副本,且恢复会还原数
29、据库到上一次进行备份的地方且恢复会还原数据库到上一次进行备份的地方 .(2 2)完整恢复模式)完整恢复模式:此模式使用数据库和全部日志信息的此模式使用数据库和全部日志信息的副本来还原数据库副本来还原数据库 .(3 3)大容量日志恢复)大容量日志恢复:在进行大批量操作时不是将所有每在进行大批量操作时不是将所有每一项事务都记录到日志中,而只是对这些操作进行开始和一项事务都记录到日志中,而只是对这些操作进行开始和结果等基础信息的记录结果等基础信息的记录.简单恢复模式简单恢复模式:由于截断事务日志,备份之后进行的更改会由于截断事务日志,备份之后进行的更改会丢失丢失.数据库的事务处理与数据恢复数据库的事
30、务处理与数据恢复设置恢复模式 在对象资源管在对象资源管理器,展开理器,展开“服务器对象服务器对象”结点结点 ,选择要选择要进行设置的数进行设置的数据库,右键单据库,右键单击,在弹出菜击,在弹出菜单中选择单中选择”属属性性”命令命令.打开打开如图所示对话如图所示对话框框,选择选择”选项选项”标签标签.数据库的事务处理与数据恢复数据库的事务处理与数据恢复2SQL Server 2005备份类型 常见的备份类型有:常见的备份类型有:完整备份,差异备份,事务日志备份,完整备份,差异备份,事务日志备份,尾日志备份尾日志备份等等(1 1)完整备份)完整备份 :数据库完整备份包含所有数据文件和部分数据库完整
31、备份包含所有数据文件和部分事务日志事务日志。完整备份与完成备份时的整个数据库相同,这完整备份与完成备份时的整个数据库相同,这一备份作为数据库恢复时的基线。一备份作为数据库恢复时的基线。(2 2)差异备份:差异备份将备份上一次完整数据库备份之)差异备份:差异备份将备份上一次完整数据库备份之后被更改的数据库部分。后被更改的数据库部分。(3 3)事务日志备份:记录了所有数据库的更改。当执行完)事务日志备份:记录了所有数据库的更改。当执行完整数据库备份时,通常需要进行事务日志备份整数据库备份时,通常需要进行事务日志备份.(4 4)尾日志备份:包含上一次未备份的日志部分(称为日)尾日志备份:包含上一次未
32、备份的日志部分(称为日志的志的“活动部分活动部分”)的事务日志备份。)的事务日志备份。数据库的事务处理与数据恢复数据库的事务处理与数据恢复3SQL Server 2005备份策略(1 1)完全数据库备份策略)完全数据库备份策略:完全数据库备份策略是定期完全数据库备份策略是定期执行数据库的执行数据库的“完整备份完整备份”。(2 2)数据库和事务日志备份策略)数据库和事务日志备份策略 :即在数据库完整备即在数据库完整备份的基础上,增加事务日志备份,以记录全部数据库份的基础上,增加事务日志备份,以记录全部数据库的变化的变化 (3 3)差异备份策略:差异备份策略包括执行常规的完整)差异备份策略:差异备
33、份策略包括执行常规的完整备份和差异备份,还可以在完整备份和差异备份之间执行备份和差异备份,还可以在完整备份和差异备份之间执行事务日志备份事务日志备份 数据库的事务处理与数据恢复数据库的事务处理与数据恢复4备份设备备份操作前就已创建好的备份文件称为备份操作前就已创建好的备份文件称为“备份设备备份设备”5SQL Server 2005备份与恢复操作 SQL Server 2005 SQL Server 2005 中中,可以用可以用Transact-SQL Transact-SQL 中的中的BACKUP BACKUP 命令进行备份操作命令进行备份操作,RESTORE,RESTORE 命令进行恢复操命
34、令进行恢复操作作.6在Management Studio管理工具中备份数据库(1 1)创建备份设备)创建备份设备 :对象资源管理器,展开对象资源管理器,展开“服务器服务器对象对象”结点,右击结点,右击“备份设备备份设备”,在弹出菜单中选择,在弹出菜单中选择“新建备份设备新建备份设备”命令命令.数据库的事务处理与数据恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复数据库的事务处理与数据恢复(2 2)选择要进行备份的数据库,如)选择要进行备份的数据库,如booksysbooksys。右键单击,在弹。右键单击,在弹出菜单中指向出菜单中指向“任务任务”,在子菜单中选择,在子菜单中选择“备份备份
35、”命令。打开命令。打开如图所示的如图所示的“备份数据库备份数据库”对话框对话框 .指定备指定备份设备份设备指定备份指定备份类型类型7在Management Studio管理工具中恢复数据库(1 1)进行尾日志备)进行尾日志备份份 :打开备份数据库打开备份数据库对话框,进行数据库对话框,进行数据库备份设置,备份设置,“备份类备份类型型”选择选择“事务日事务日志志”。然后选择。然后选择“选选项项”页,如图所示。页,如图所示。在在“事务日志事务日志”区中区中选中选中“备份日志尾部,备份日志尾部,并使数据库处于还原并使数据库处于还原状态状态”。设置完成后,。设置完成后,单击单击“确定确定”。数据库的事务处理与数据恢复数据库的事务处理与数据恢复(2 2)在对象资源管)在对象资源管理器,选择要进行恢理器,选择要进行恢复的数据库,如复的数据库,如booksysbooksys。右键单击,。右键单击,在弹出菜单中指向在弹出菜单中指向“任务任务”,在子菜单,在子菜单中选择中选择“还原还原”命令命令(3 3)在)在“选择用于还选择用于还原的备份集原的备份集”列表中。列表中。选择用于还原的备份。选择用于还原的备份。然后单击然后单击“确定确定”按按钮,系统开始还原。钮,系统开始还原。数据库的事务处理与数据恢复数据库的事务处理与数据恢复