数据库的备份与恢复

数据库的备份与恢复

ID:46235015

大小:433.00 KB

页数:17页

时间:2019-11-22

数据库的备份与恢复_第1页
数据库的备份与恢复_第2页
数据库的备份与恢复_第3页
数据库的备份与恢复_第4页
数据库的备份与恢复_第5页
资源描述:

《数据库的备份与恢复》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章数据库的备份与恢复8.1故障的类别8.2数据库的备份与恢复技术8.3数据库镜像8.1故障的类别由于以下几类原因可能导致数据库中的数据丢失或被破坏:系统故障、事务故障、介质故障、计算机病毒,以及自然灾害和盗窃等。①系统故障,指造成系统停止运行的任何事件,使得系统需要重新启动,常称做软故障,如硬件错误、操作系统错误、突然停电等。②事务故障,由于事务非正常终止而引起数据破坏。③介质故障,指外存故障,如磁盘损坏、磁头碰撞等,常称做硬故障。④计算机病毒,破坏性病毒会破坏系统软件、硬件和数据。⑤误操作,如用户误使用了诸如DELETE

2、,UPDATE等命令而引起数据丢失或被破坏。⑥自然灾害,如火灾、洪水或地震等,它们会造成极大的破坏,会毁坏计算机系统及其数据。⑦盗窃,一些重要数据可能会遭窃。因此,必须制作数据库的副本,即进行数据库备份,以便在数据库遭到破坏时能够对其进行恢复,即把数据库从错误状态恢复到某一正确状态。8.2数据库的备份与恢复技术8.2.1建立数据库备份备份(转储)是一项重要的数据库管理工作,必须确定何时备份、备份到何处、由谁来做备份、备份哪些内容及备份策略。设计备份策略的指导思想是:以最小的代价恢复数据库。备份与恢复是互相联系的,备份策略与恢复

3、技术应结合起来考虑。1.备份内容数据库中数据的重要程度决定了数据恢复的必要性与重要性,也就决定了数据是否及如何备份。数据库需备份的内容可分为系统数据库和用户数据库两部分,系统数据库记录了重要的系统信息,用户数据库则记录了用户的数据。8.2.1建立数据库备份2.备份方法备份操作十分费时并且需要消耗大量资源,因此不能频繁进行。DBA可根据数据库实际情况选择备份方式,按备份的时机可分为静态备份与动态备份;按备份的范围可分为海量(全量)备份与增量备份。(1)静态转储与动态转储静态转储是当系统中没有事务运行时进行转储操作,即在转储操作开

4、始前必须先停止所有对数据库的任何存取与更新操作,并且在转储期间也不能对数据库进行存取操作。动态转储指转储期间允许对数据库进行存取与更新操作。静态存储简单,但转储必须停止所有数据库的存取与更新操作,这会降低数据库的可用性。动态存储可以克服静态转储的缺点,提高数据库的可用性,但可能会产生转储结束后保存的数据副本并不是正确有效的。这个问题可采用如下技术解决:记录转储期间各事务对数据库的修改活动,建立日志文件,在恢复时采用数据副本加日志文件的方式,将数据库恢复到某一时刻的正确状态。(2)海量转储和增量转储海量转储指每次转储全部数据库,

5、也称全量转储。增量转储则指每次只转储自上次转储后被更新过的数据。使用海量转储得到的后备副本进行数据恢复时会更加方便一些,但是,如果数据库很大且事务处理十分频繁,则采用增量转储更有效。8.2.1建立数据库备份3.性能考虑在备份数据库时考虑对DBMS性能的影响,主要有:①备份一个数据库所需的时间主要取决于物理设备的速度,如磁盘设备的速度通常比磁带设备快。②通常备份到多个物理设备比备份到一个物理设备要快。③系统的并发活动对数据库的备份有影响,因此在备份数据库时,应减少并发活动,以减少数据库备份所需的时间。④尽可能同时向多个备份设备写

6、入数据,即进行并行的备份。并行备份将需备份的数据分别备份在多个设备上,这多个备份设备构成了备份集。图8.1显示了在多个备份设备上进行备份,以及由备份的各组成部分形成的备份集。8.2.1建立数据库备份图8.1使用多个备份设备及备份集8.2.1建立数据库备份使用并行备份可以减少备份操作的时间,例如,使用3个磁盘设备进行并行备份,比只使用一个磁盘设备进行备份正常情况下可以减少2/3的时间。用多个设备进行并行备份时,需注意以下几点:●设备备份操作使用的所有设备必须具有相同的介质类型;●多设备备份操作使用的设备其存储容量和运行速度可以不

7、同;●从多设备备份恢复时,不必使用与备份时相同数量的设备。【例8.1】使用逻辑名test1创建一个命名的备份设备,并将数据库XSCJ完全备份到该设备。USEmasterEXECsp_addumpdevice'disk','test1','e:db_temptest1.bak'BACKUPDATABASEXSCJTOtest1【例8.2】将数据库XSCJ备份到多个备份设备。USEmasterEXECsp_addumpdevice'disk','test2','e:db_temptest2.bak'EXECsp_addum

8、pdevice'disk','test3','e:db_temptest3.bak'BACKUPDATABASEXSCJTOtest2,test3WITHNAME='xscjbk'本例将XSCJ数据库备份到两个磁盘设备test2和test3上。8.2.1建立数据库备份【例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。