配色: 字号:
数据备份
2014-02-19 | 阅:  转:  |  分享 
  
上一篇

:

数据库备份与还原处理

|

下一篇

:SQLServer

数据库文件恢复技术

数据库备份方案

数据库备份,是在数据丢失的情况下,能及时恢复重要数据,防止数据丢失的一种重要手段。一个合理的

数据库备份方案,应该能够在数据丢失时,

有效地恢复重要数据,

同时需要考虑技术实现难度和有效地利用资源。

1.1.

准备工作

在制订数据备份方案前,

我们首先对要对现实情况做一个具体的调查,

这样制订出来的方案才是合理且有效

的。一般,我们需要了解如下内容:

l数据丢失的允许程度?

l允许的故障处理时间?

l业务处理的频繁程度?

l服务器的工作负荷?

l可接受的备份/恢复处理技术难度?

l数据库的大小?

l数据库大小的增长速度?

l那些表中的数据变化是频繁的,那些表中的数据是相对固定的?

l那些表中的数据是很重要的,不允许丢失的,那些表中的数据是允许丢失一分的?

l什么时候大量使用数据库,导致频繁的插入和更新操作?

l现有的数据库备份资源(磁盘、磁带、光盘)有哪些?

l有无可能为数据库备份投入新的设备或资金?



1.2.

备份方法

了解现状后,我们再看看

SQLServer

提供给我们的备份方法,

SQLServer

一共给我们提高了四种数据

库备份的方法:

1.2.1.

完全备份



这种备份会备份数据库中所有的数据。因此,它生成的备份文件大小和备份时间是由数据库中,数据的容

量决定的。还原的时候,可以直接从备份文件还原到备份时的状态,不需要其他文件的支持,还原过程最简单;



1.2.2.

差异备份



备份自上次完全备份后,发生了更改的数据。差异备份是备份发生了更改的数据,因此在做差异备份前,

必须至少有一次完全备份。而还原的时候,也必须先还原差异备份前一次的完全备份,才能在此基础上进行差

异备份数据的还原。这种备份生成的备份文件大小和备份需要的时间,取决于自上次完全备份后,数据库的数

据变化情况,相对于完全备份来说,它生成的备份文件较小,备份时间较短,对

SQLServer

服务性能的影响

也较小;但它的还原过程相对麻烦一点,必须对应它之前的完全备份才能成功还原;



1.2.3.

日志备份



备份是自上次备份后对数据库执行的所有事务的一系列记录,这个上次备份,

可以是完全备份、

差异备份、

日志备份,但日志备份前,至少有一次完全备份。还原的时候,必须先还原完全备份,再还原差异备份(如果

有的话),再按照日志备份的先后顺序,依次还原各次日志备份的内容;这种备份生成的备份文件最小,需要

的时间也最短,对

SQLServer

服务性能的影响也最小,适宜于经常备份。但是很显然地,它的还原过程是最

麻烦的,不但要对应它之前做的完全备份和差异备份(如果有的话),还要注意还原的顺序;



1.2.4.

文件和文件组备份



可以备份和还原数据库中的个别文件或文件组。这种备份方法平常使用的机率比较少,常常用于对重要数

据的备份。它要求在数据库设计时,就做好考虑,把需要单独做特别备份的表进行分组,给它们分配不同的文

件组(表只能放在文件组上,不能放在具体的文件上,一个文件组可以是一个文件或多个文件),这样才能在

做备份的时候,

单独备份这些数据。

这种的备份的处理技术难度相对来说比较高,

不但要掌握备份

/还原的方法,

还必须对数据库结构和数据库中的各表数据情况掌握得比较好

1.3.

备份方案制订策略



有了上面的资料,我们就可以根据我们的实际情况来选择合适的备份方法了。一般的,我们在制订备份方

案的时候,可以按照下面的策略:



l















数据库备份能保障在数据丢失的情况下,能恢复重要数据

,

因此,在数据库中的数据发生变化后,要及时对

重要的数据进行备份。



l

















数据备份,要求不能影响业务处理的正常进行,因此,数据备份要采用多种备份方法并用,将完全备份这

类占用服务资源高的备份设置在业务处理的空闲时间段,而将日志备份这类占用服务资源少的备份方法应用在

业务处理的高峰,但却需要及时备份的时候;



l













充分考虑故障出现时,业务处理可以接受的停机时间,不同的备份方法,需要的还原时间不同,因此,在照

顾备份对业务处理影响的同时,要考虑还原的时间,不能因为完全备份对业务处理影响很大,就几个月才做一

次,这样的话,在还原的时候花费的时间就很长了;



l















考虑公司的技术力量,尽量避免采用超过公司掌握的技术程序的备份处理方法;



l



用效利用备份资源,要根据公司目前具备的备份资源,合理地使用上述四种备份方法进行备份,同时要考虑过

期备份文件的清除和备份资源的再利用问题;



l















要考虑灾难性数据丢失造成的影响。对于重要的数据

,

要将数据库备份到多种介质和多个地方,这样一处备

份损坏了,还有其他的备份可用。



1.4.

备份方案的实施



数据库备份是一个周期性的工作,因此我们应该让

SQLServer

按照我们制订的备份方案,自动地完成各

种备份,而不要我们手工来进行日常的备份处理。





SQLServer

中,要定时执行某项操作,是由

SQLAgent

服务来完成的,因此,要让我们的备份方案

能自动完成的话,首先我们要把

SQLAgent

服务设置为自动启动

(

需要注意的是,

win98/winme

这类的操作

系统是无法设置

SQLSERVERAGENT

自动启动的

)

,设置方法:



我的电脑--控制面板--管理工具--服务--鼠标右键SQLSERVERAGENT--属性--启动类型--选择“自动启动”--确定

在SQLServer中,我们可以通过下面几种方法来定义我们的数据库备份:

1数据库维护计划:这里可以定义完全备份和日志备份的自动备份作业。定义方法:--企业管理器--管理--右键数据库维护计划--新建维护计划--[下一步]--选择你要备份的数据库--[下一步]--直到“指定数据库备份计划”这项

--然后按照向导提示进行设置就行了

2.数据库备份:这里可以根据我们的备份方式制订各种数据库备份作业。定义方法:--企业管理器--鼠标右键你要备份的数据库--所有任务--备份数据库--在[

备份]项中选择数据库和备份方式--在[目的]--[备份到]项中,按[添加]按钮,添加备份文--在[调度]项中,勾选“调度”,并点…按钮设置备份的时间安排--

确定



3.作业:上述两种方法,最终设置的结果都是一个作业(

JOB)调度,因此,我们也可以通过直接创建作业,由作业定时调用备份处理的语句来实现自动备份。定义方法:--企业管理器--SQLServer代理--右键作业--新建作业--[常规]项中输入作业名称--[步骤]项--新建--输入步骤名--[类型]中选择"Transact-SQL脚本(TSQL)"





献花(0)
+1
(本文系一0剪梅首藏)