日期:2011-05-02 15:22:00 来源:本站整理
SQL Server数据库技术(97)[MSSQL防范]
本文“SQL Server数据库技术(97)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
??理主如果为避免不法登录者或非受权用户对sql server 数据库或数据造成破坏,但在有些情形下这种安全管理机制显得力不从心.比方合理用户不当心对数据库数据做了不精确的操作大概保存数据库文件的磁盘遭到破坏大概运行SQL Server 的服务器因某种不可预见
的事情而招致崩溃.所以我们需求提出别的的筹划即数据库的备份和恢复来办理这种问题.本章的主要目的就是介绍备份、恢复的含
义,数据库备份的种类以及备份设备等基本的概念,以及若何成立备份和恢复数据库,使读者对其有全面的理解和熟习,可以自主拟定自己的备份和恢复筹划.
15.1.1 备份和恢复
????备份和恢复组件是SQL Server 的重要构成部份.备份就是指对SQL Server 数据库或事件日记举行拷贝,数据库备份记录了在举行备份这一操作时数据库中全部数据的状况,假如数据库因不测而破坏,这些备份文件将在数据库恢复时被用来恢复数据库.
????由于SQL Server 支持在线,备份所以普通情形下可一边举行备份,一边举行别的操作,但是,在备份历程中不答应履行以下操作:
????恢复就是把蒙受破坏或丧失数据或呈现错误的数据库恢复到本来的正常状况,这一状况是由备份决意的,但是为了保护数据库的一致性,在备份中未完成的事件并不举行恢复.
????举行备份和恢复的工作主如果由数据库管理员来完成的.实际上数据库管理员平常对比重要、对比频繁的工作就是对数据库举行备份和恢复.
????注意:假如在备份或恢复历程中发生中止,则可以重新从中止点开始履行备份或恢复.这在备份一个大型数据库时极有代价.
15.1.2 数据库备份的范例
在SQL Server 2000 中有四种备份范例,辨别为;
- 数据库备份(Database Backups)
- 事件日记备份(Transaction Log Backup)
- 差别备份(Differential Database Backups)
- 文件和文件组备份(File and File Group Backup)
1 数据库备份(Database Backups)
????数据库备份是指对数据库的完好备份,包含全部的数据以及数据库对象.实际上备份数据库历程就是首先将事件日记写到磁盘上,
然后按照事件成立相同的数据库和数据库对象以及拷贝数据的历程.由于是对数据库的完好备份,所以这种备份范例不但速度较慢,
并且将占用大量磁盘空间.正因为如此,在举行数据库备份时,常将其安置在晚间,因为此时整个数据库系统几近不举行别的事件操作,从而可以提高数据库备份的速度.
????在对数据库举行完好备份时,全部未完成的事件大概发生在备份历程中的事件都不会被备份.假如您利用数据库备份范例,
则从开始备份到开始恢复这段时间内发生的任何针对数据库的改正将无法恢复.所以我们老是在一定的要求或条件下才利用这种备份范例,比方:
- 数据不是非常重要,固然在备份之后恢复之前数据被改正,但这种改恰是可以忍耐的;
- 通过批处理或别的办法,在数据库恢复之后可以很简单地重新实目前数据破坏前发生的改正;
- 数据库改变的频率不大.
????注意:假如对数据一致性要求较高(将数据库恢复到发生破坏的刻),则不该利用数据库备份.
??? 2 事件日记备份(Transaction Log Backup)
????事件日记备份是指对数据库发生的事件举行备份,包含从上次举行事件日记备份、差别备份和数据库完好备份之后,全部已经完成的事件.在以下情形下我们常挑选事件日记备份.
- 不答应在近来一次数据库备份之后发生数据丧失或破坏现象;
- 存储备份文件的磁盘空间很小大概留给举行备份操作的时间有限,比方兆字节级的数据库需求很大的磁盘空间和备份时间;
- 预备把数据库恢复到发生失利的前一点;
- 数据库改变较为频繁.
????但是,成立事件日记备份却相对对比复杂.因为在利用事件日记对数据库举行恢复操作时,还必须有一个完好的数据库备份,并且事件日记备份恢复时必必要按一定的次序举行.比方在上周末对数据库举行了完好的数据库备份,在从周一到本周末的每一天都举行一次事件日记备份,那么若要打算对数据库举行恢复,则首先恢复数据库备份,然后按照次序恢复从周一到本周末的事件日记备份.
????有些时侯数据库事件日记会被中止,比方数据库中履行了非日记操作(如成立索引、成立或删除数据库文件、自动或手工缩小数据库文件大小),此时应当当即成立数据库或差别备份,然后再举行事件日记备份.从前举行的事件日记备份也没有必要了.
3 差别备份(Differential Database Backups)
????差别备份是指将近来一次数据库备份以来发生的数据改变备份起,来因此差别备份实际上是一种增量数据库备份.与完好数据库备份相比,差别备份由于备份的数据量较小,所以备份和恢复所用的时间较短.通过增添差别备份的备份次数,可以降低丧失数据的风险,将数据库恢复至举行最后一次差别备份的时刻,但是它无法像事件日记备份那样供应到失利点的无数据丧失备份.
????但在实际中为了最大限度地削减数据库恢复时间以及降低数据丧失数目,我们常一同利用数据库备份、事件日记备份和差别备份,而采取的备份筹划是这样的;
- 首先有规律地举行数据库备份,比方每晚举行备份;
- 其次以较小的时间隔断举行差别备份,比方三个小时或四个小时;
- 最后在相临的两次差别备份之间举行事件日记备份,可以每二十或三非常钟一次.
这样在举行恢复时,我们可先恢复近来一次的数据库备份,接着举行差别备份,最后举行事件日记备份的恢复.
但是,在更多的情形下我们但愿数据库能恢复到数据库失利那一时刻,那么我们该怎样做呢?下面的办法大概会有大帮忙. - 首先假如可以拜候数据库事件日记文件则应备份当前正处于活动状况的事件日记;
- 其次恢复近来一次数据库备份;
- 接着恢复近来一次差别备份;
- 最后按次序恢复自差别备份以来举行的事件日记备份.
4 文件和文件组备份(File and File Group Backup)
????文件或文件组备份是指对数据库文件或文件夹举行备份,但其不像完好的数据库备份那样同时也举行事件日记备份.利用该备份办法可提高数据库恢复的速度,因为其仅对遭到破坏的文件或文件组举行恢复.
????但是在利用文件或文件组举行恢复时,仍要求有一个自上次备份以来的事件日记备份来保证数据库的一致性.所以在举行完文件或文件组备份后应再举行事件日记备份.不然备份在文件或文件组备份中全部数据库改变将无效.
????假如需求恢复的数据库部份触及到多个文件或文件组,则应把这些文件或文件组都举行恢复.比方,假如在成立表或索引时,表或索引是跨多个文件或文件组,则在事件日记备份完毕后应再对表或索引有关的文件或文件组举行备份,不然在文件或文件组恢复时将会出错.
15.1.3 备份和恢复的战略
????普通而言,我们老是依靠所要求的恢复本领(如将数据库恢复到失利点) 、备份文件的大小(如完成数据库备份或只举行事件日记的备份或是差别数据库备份)以及留给备份的时间等来决意该利用哪类范例的备份.常用的备份挑选筹划有:仅仅举行数据库备份、或在举行数据库备份的同时举行事件日记备份,或利用完好数据库备份和差别数据库备份.
????选用怎样的备份筹划将对备份和恢复产生直接影响,并且也决意了数据库在遭到破坏前后的一致性水平.所以在做出该抉择时,您必须熟习到以下几个问题:
- 假如只举行数据库备份,那么将无法恢复自近来一次数据库备份以来数据库中所发生的全部事件.这种筹划的长处是简单,并且在举行数据库恢复时操作也很便利;
- 假如在举行数据库备份时也举行事件日记备份,那么可以将数据库恢复到失利点,那些在失利前未提交的事件将无法恢复,但假如您在数据库失利后当即对当前处于活动状况的事件举行备份,则未提交的事件也可以恢复.
- 从以上可以看出,对数据库一致性的要求程度成为我们挑选这样或那样的备份筹划的主要的广泛性缘由.但在某些情形下对数据库备份提出更为严峻的要求,比方在处理对比重要业务的利用环境中,常要求数据库服务器持续工作,至多只留有一小段时间来履行系统保护任务,在该情形下一旦呈现系统失利,则要求数据库在最短时间内当即恢复到正常状况,以避免丧失过量的重要数据,由此可见备份或恢复所需时间常常也成为我们挑选何种备份筹划的重要影响因素.
那么若何才能削减备份和恢复所耗费时间呢?SQL Server 供应了几种办法来削减备份或恢复操作的履行时间. - 利用多个备份设备来同时举行备份处理.同理,可以从多个备份设备上同时举行数据库恢复操作处理;
- 综合利用完好数据库备份、差别备份或事件日记备份来削减每次的需求备份的数据数目;
- 利用文件或文件组备份以及事件日记备份,这样可以只备份或恢复那些包含相关数据的文件,而不是整个数据库.
- 别的需求注意的是,在备份时我们也要决意该利用哪类备份设备如磁盘或磁带,并且决意如安在备份设备上成立备份,比方将备份增添到备份设备上或将其覆盖.
1 简单恢复(Simple Recovery)
????所谓简单恢复就是指在举行数据库恢复时仅利用了数据库备份或差别备份,而不触及事件日记备份.简单恢复情势可以使数据库恢复到上一次备份的状况,但由于不利用事件日记备份来举行恢复,所以无法将数据库恢复到失利点状况.当挑选简单恢复情势经常利用的备份战略是:首先举行数据库备份,然后举行差别备份.
2 完好恢复(Full Recovery)
????完好数据库恢复情势是指通过利用数据库备份和事件日记备份将数据库恢复到发生失利的时刻,因此几近不造成任何数据丧失,这成为对付因存储介质破坏而数据丧失的最佳办法.为了保证数据库的这种恢复本领,全部的批数据操作比方SELECT INGO、成立索引都被写入日记文件.挑选完好恢复情势经常利用的备份战略是:
- 首先举行完好数据库备份;
- 然后举行差别数据库备份;
- 最后举行事件日记的备份.
假如预备让数据库恢复到失利时刻必须对数据库失利前正处于运行状况的事件举行备份.
????批日记恢复在性能上要优于简单恢复和完好恢复情势,它能尽最大勤奋削减批操作所需求的存储空间.这些批操作主如果:SELECT INTO 批装载操作(如bcp 操作或批插入操作)、成立索引针对大文本或图象的操作(如WRITETEXT、 UPDATETEXT).挑选批日记恢复情势所采取的备份战略与完好恢复所采取的恢复战略基本相同.
????从以上的阐述中我们可以看到,在实际利用中,备份战略和恢复战略的挑选不是彼此孤独的,而是有着精密的接洽.我们并不但仅是因为数据库备份为数据库恢复供应了 "原质料"这一事实,以便在采取何种数据库恢复情势的抉择中考虑该怎样举行数据库备份,更多是因为在挑选该利用哪类备份范例时我们必须考虑到当利用该备份举行数据库恢复时,它能把遭到破坏的数据库"带"到怎样的状况(是数据库失利的时刻,还是近来一次备份的时刻).但有一点我们必须夸大,即备份范例的挑选和恢复情势的肯定都应固守于这一目标:尽最大大概,以最快速度削减或清除数据丧失.
以上是“SQL Server数据库技术(97)[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论