《数据库》第十讲数据的备份、恢复与传输.ppt课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《数据库》第十讲数据的备份、恢复与传输.ppt课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 第十 数据 备份 恢复 传输 ppt 课件
- 资源描述:
-
1、第十讲数据的备份、恢复和传输教学内容教学内容l事务概念、属性、执行事务的事务概念、属性、执行事务的3 3种模式种模式l数据锁的概念、锁的对象、锁的方法以及数据锁的概念、锁的对象、锁的方法以及死锁问题死锁问题l数据的备份、恢复以及传输的方法数据的备份、恢复以及传输的方法学习目标及重点学习目标及重点学习目标学习目标l掌握事务概念、属性掌握事务概念、属性l掌握数据锁的概念和死锁问题掌握数据锁的概念和死锁问题l掌握数据备份的概念掌握数据备份的概念l学会如何备份数据库、恢复数据库学会如何备份数据库、恢复数据库lSQL Server数据库与其它软件的数据交换数据库与其它软件的数据交换重点与难点重点与难点l
2、事务概念事务概念l事务属性事务属性l执行事务的执行事务的3 3种模式种模式l数据锁的概念及死锁问题数据锁的概念及死锁问题l如何在企业管理器中执行数据库备份如何在企业管理器中执行数据库备份l如何使用如何使用Transact-SQL语句执行数据库备份语句执行数据库备份l如何使用企业管理器恢复数据库如何使用企业管理器恢复数据库l如何使用如何使用Transact-SQL语句恢复数据库语句恢复数据库10.1 10.1 事务简介事务简介l10.1.1 事务概念事务概念事务是作为单个逻辑工作单元执行的一系列操事务是作为单个逻辑工作单元执行的一系列操作。作。一个逻辑工作单元必须有四个属性,称为一个逻辑工作单元
3、必须有四个属性,称为 ACID(原子性、一致性、隔离性和持久性)属(原子性、一致性、隔离性和持久性)属性,只有这样才能成为一个事务性,只有这样才能成为一个事务 10.1.2 10.1.2 事务的属性(事务的属性(ACIDACID)l 原子性原子性(Atomicity)(Atomicity)事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。l 一致性一致性(Consistency)(Consistency)事务在完成时,必须使所有的数据都保持一致状态l 隔离性隔离性(Isolation)(Isolation)由并发事务所作的修改必须与任何其它并发事务所作的修改隔离l 持久性持
4、久性(Durability)(Durability)事务完成之后,它对于系统的影响是永久性的。10.1.3 10.1.3 执行事务的执行事务的3 3种模式种模式1.1.显式事务显式事务:可以显式地在其中定义事务的启动和结束。可以显式地在其中定义事务的启动和结束。语法语法BEGIN TRAN SACTION BEGIN TRAN SACTION transaction_nametransaction_name|tran_name_variabletran_name_variable WITH MARK WITH MARK descriptiondescription 参数参数 transacti
5、on_nametransaction_name是给事务分配的名称。不允许标识符多于是给事务分配的名称。不允许标识符多于 32 32 个字符。个字符。tran_name_variabletran_name_variable用用 charchar、varcharvarchar、ncharnchar 或或 nvarcharnvarchar 数据类型声明有效事务的数据类型声明有效事务的变量的名称变量的名称WITH MARK WITH MARK descriptiondescription指定在日志中标记事务。指定在日志中标记事务。Description Description 是描述该标记的字符串。是
6、描述该标记的字符串。如果使用了如果使用了 WITH MARKWITH MARK,则必须指定事务名。,则必须指定事务名。WITH MARK WITH MARK 允许将事允许将事务日志还原到命名标记。务日志还原到命名标记。显式事务语句显式事务语句功能功能语句语句开始事务开始事务BEGIN TRANSACTION提交事务提交事务COMMIT TRANSACTION或或COMMITWORK回滚事务回滚事务ROLLBACK TRANSACTION或或ROLLBACKWORK自动提交、隐含事务自动提交、隐含事务l2.2.自动提交事务自动提交事务系统默认的事务方式,许多系统默认的事务方式,许多SQLSQL语
7、句在执行时都会自动语句在执行时都会自动发生的事务。每个数据操作语句即为一个事务。发生的事务。每个数据操作语句即为一个事务。l3.3.隐含事务隐含事务当连接以隐性事务模式进行操作时,当连接以隐性事务模式进行操作时,SQL ServerSQL Server将在将在提交或回滚当前事务后自动启动新事务。无须描述事提交或回滚当前事务后自动启动新事务。无须描述事务的开始,只须提交或回滚每个事务。隐性事务模式务的开始,只须提交或回滚每个事务。隐性事务模式生成连续的事务链。生成连续的事务链。EX EX 事务事务例:建立内含事务的存储过程例:建立内含事务的存储过程Create Proc Create Proc
8、TestTranasTestTranasBegin TRAN Begin TRAN Select Select*From From StudInfoStudInfoRollbackRollbackGo Go 事务保存点的设置与回滚事务保存点的设置与回滚SAVE TRANSACTION SAVE TRANSACTION 在事务内设置保存点。在事务内设置保存点。语法语法 SAVE TRAN SACTION SAVE TRAN SACTION savepoint_namesavepoint_name|savepoint_variablesavepoint_variable 参数参数 savepoin
9、t_namesavepoint_name是指派给保存点的名称。保存点名称必须符合标识符规则,但只使用前是指派给保存点的名称。保存点名称必须符合标识符规则,但只使用前 32 32 个字个字符符 savepoint_variablesavepoint_variable是用户定义的、含有有效保存点名称的变量的名称。必须用是用户定义的、含有有效保存点名称的变量的名称。必须用 charchar、varcharvarchar、ncharnchar 或或 nvarcharnvarchar 数据类型声明该变量。数据类型声明该变量。BEGIN TRANBEGIN TRANSAVE TRAN SAVE TRAN
10、TempTranTempTranIFIF(ERROR0ERROR0)BEGINBEGINROLLBACK TRAN ROLLBACK TRAN TempTranTempTran-回滚到事务保存点回滚到事务保存点/*失败时所使用的变通方案失败时所使用的变通方案*/END.IF(.)END.IF(.)COMMITCOMMITELSEELSEROLLBACK 分布式事务分布式事务 如果要在事务中存取多个数据库服务器中的数据(包含执行存储过程),如果要在事务中存取多个数据库服务器中的数据(包含执行存储过程),就必须使用就必须使用“分布式事务分布式事务”(Distributed TransactionD
11、istributed Transaction)Begin Distributed Begin Distributed trantranInsert into Insert into CourseInfo(CourseID,CourseNameCourseInfo(CourseID,CourseName)values(A00232,TestName)values(A00232,TestName)If ERROR0 GOTO ERRORPROCIf ERROR0 GOTO ERRORPROCINSERT INTO INSERT INTO AnotherServer.DatabaseName.dbo
12、.tablenameAnotherServer.DatabaseName.dbo.tablename(FieldName1,FieldName2)values(Values1,Values2)(FieldName1,FieldName2)values(Values1,Values2)ERRORPROC:ERRORPROC:IF ERROR0IF ERROR0ROLLBACKROLLBACKELSEELSE COMMIT COMMIT 10.2 10.2 数据锁数据锁 l锁定(锁定(LockLock)是将指定的数据临时锁起来供我们使用,以防)是将指定的数据临时锁起来供我们使用,以防止该数据被别人
13、修改或读取。止该数据被别人修改或读取。l并发性并发性(Concurrency)(Concurrency):允许多个事务同时进行数据处理的:允许多个事务同时进行数据处理的性质性质乐观与悲观并发性控制乐观与悲观并发性控制l乐观并发性控制乐观并发性控制(Optimistic Concurrency)(Optimistic Concurrency):乐观控制(或:乐观控制(或称乐观锁定)就是假设发生数据存取冲突的机会很小,因此称乐观锁定)就是假设发生数据存取冲突的机会很小,因此在事务中并不会持续锁定数据,而只有在更改数据时才会去在事务中并不会持续锁定数据,而只有在更改数据时才会去锁定数据并检查是否发生
14、存取冲突。锁定数据并检查是否发生存取冲突。l悲观并发性控制(悲观并发性控制(PessimiticPessimitic Concurrency Concurrency):悲观控制):悲观控制(或称悲观锁定)与乐观控制刚好相反,它会在事务中持续(或称悲观锁定)与乐观控制刚好相反,它会在事务中持续锁定要使用的数据,以确保数据可以正确存取。锁定要使用的数据,以确保数据可以正确存取。锁的对象锁的对象资源资源说明说明RIDRID以记录(以记录(RowRow)为单位作锁定)为单位作锁定KeyKey已设置为索引的字段已设置为索引的字段PagePage数据页或索引页数据页或索引页(8KB(8KB大小的页面大小的
15、页面)ExtentExtent8 8个连续的个连续的Page(Page(分配内存给数据页时的分配内存给数据页时的单位单位)TableTable整个数据表(包含其中所有数据及索引)整个数据表(包含其中所有数据及索引)DBDB整个数据库整个数据库锁的方法锁的方法 l独占式锁(独占式锁(Exclusive LockExclusive Lock):):ExclusiveExclusive锁可禁锁可禁止其他事务对数据作存取或锁定操作止其他事务对数据作存取或锁定操作l共享式锁共享式锁(Shared Lock)(Shared Lock):SharedShared锁可将数据设成锁可将数据设成只读,并禁止其他事
16、务对该数据作只读,并禁止其他事务对该数据作ExclusiveExclusive锁定,锁定,但却允许其他事务对数据再作但却允许其他事务对数据再作SharedShared锁定。锁定。l更改式锁更改式锁(Update Lock)(Update Lock):UpdateUpdate锁可以和锁可以和SharedShared锁共存,但禁止其他的锁共存,但禁止其他的UpdateUpdate锁或锁或ExclusiveExclusive锁。锁。死锁问题死锁问题 l当多个事务的手中都锁定了某些资源,却又当多个事务的手中都锁定了某些资源,却又在等待另外一些被彼此锁定的资源时,就会在等待另外一些被彼此锁定的资源时,就
17、会发生死锁发生死锁(Deadlock)(Deadlock)l避免死锁发生的技巧避免死锁发生的技巧使用相同的顺序来存取数据使用相同的顺序来存取数据尽量缩短事务的时间尽量缩短事务的时间尽量使用较低的隔离等级尽量使用较低的隔离等级 10.3 10.3 数据库备份概念数据库备份概念l数据库的备份和恢复是维护数据库的安全性和完整性数据库的备份和恢复是维护数据库的安全性和完整性的重要组成部分。的重要组成部分。l通过备份数据库,可以防止因为各种原因而造成的数通过备份数据库,可以防止因为各种原因而造成的数据破坏和丢失。据破坏和丢失。l恢复是指在造成数据丢失和破坏以后利用备份来恢复恢复是指在造成数据丢失和破坏以
展开阅读全文