执行数据库备份

手工备份的缺点

1、产生大量的重做日志

2、需要手工记录大量的信息

每个备份文件的位置、备份时间

每个数据文件的位置

Oracle提供了recovery manager工具,简称RMAN。使得我们的备份工作极大的简化

RMAN备份恢复的优点

1、备份数据文件、归档日志、控制文件、spfile

2、自动维护备份相关的元数据,例如备份文件的名称、完成备份的SCN号

3、以数据块为单位进行备份,只备份使用过的数据块

4、对备份出来的文件进行压缩

5、自动检测数据块是否损坏

6、支持增量备份

RMAN的体系结构

clip_image001

1、RMAN要进行备份的数据库叫做目标数据库

2、RMAN是一个客户端程序,需要建立到目标数据库的客户端连接,并在目标数据库上创建对应的服务器进程以及session,RMAN输入的各个命令,从客户端传递到服务器,由服务器进程负责执行,RMAN只能使用专用服务器连接,不能使用共享服务器连接

3、备份过程中,RMAN读取目标数据库的控制文件,从而获得目标数据库里包含哪些数据文件、归档日志文件、以及各个检查点SCN,指导RMAN完成备份和恢复的具体操作

4、RMAN获得了需要备份的文件列表以后,在将数据备份到备份介质上时,需要建立到这些备份介质的通道(channel)。一旦建立通道。数据就会从该通道备份到指定的备份介质上,每次备份恢复,我们都可以创建多个通道以加快速度。

5、RMAN将通道作为目标数据库上的服务器进程,会为每个通道都创建一个对应的服务器进程,同时,通道的类型就决定了要将数据库备份到哪种介质上,两种通道类型

磁盘通道和磁带通道

磁盘和闪回恢复区使用的都是磁盘通道

磁带使用的磁带通道,需要借助MML(media management library),RMAN可以把备份的数据通过MML传递到磁带上

6、RMAN备份过程中,会产生较多的服务器进程(RMAN客户端以及通道),需要的内存较多,对于初始化参数sessions和processes都要相应的增加

7、RMAN信息库(RMAN repository),RMAN备份过程中产生的元数据,包括备份文件的名称、路径、完成备份的时间、检查点SCN等数据,RMAN信息库可以存放在两个位置

目标数据库的控制文件

恢复目录(recovery catalog)

8、控制文件里面存放的记录分为两类

可删除的记录(归档日志文件的历史记录以及RMAN备份的元数据)

不可删除记录(数据文件、联机日志文件列表等)

如果需要在控制文件中存放新的记录,则可以删除那些可删除部分,从而提供可用空间,注意:如果RMAN备份的元数据被删除,RMAN的备份数据就失去意义,因此RMAN备份的元数据很重要

9、可以通过设置初始化参数controlfile_record_keep_time来决定控制文件中可删除部分,该参数默认是7天,表示控制文件始终保持最近7天的可删除记录,7天前的备份信息、归档日志文件历史记录被删除,如果设置为0,表示不删除历史记录,那么控制文件的增长将会失控。因此RMAN的备份周期不能超过7天

10、RMAN提供了恢复目录用来存放RMAN信息库,RMAN恢复目录由几个表和存储过程组成,这些对象存放在一个schema下面,因为表用来存放RMAN备份的元数据,因此可以永久的保留下去,而不需要删除历史记录

11、RMAN恢复目录是可选的,不是必须的,元数据通过目标数据库的控制文件传递到恢复目录,RMAN的元数据始终都存放一份在目标数据库的控制文件中,不会因为恢复目录的存在而删除,使用RMAN完成备份以后,会将控制文件的RMAN元数据同步到恢复目录,默认情况下,控制文件中的信息保留7天,恢复目录永久保留。RMAN还可以同时为多个目标数据库服务,在同一个恢复目录里面,可以保留多个目标数据库的RMAN元数据

12、如果使用恢复目录,则在使用RMAN时,除了建立到目标数据库的连接以外,还必须建立到恢复目录所在数据库的连接,在恢复目录数据库里面创建对应的服务器进程和session

13、RMAN工具本身由两部分组成

RMAN可执行程序:这是一个命令接口,提供了交互的界面,能够解释我们的RMAN命令,返回结果。在工作中,完成的实质性工作很少

脚本文件recover.bsp:备份恢复的实质性工作是由目标数据库的程序包完成的,对目标数据库的相应程序包的调用则是由文件recover.bsp实现的

bsp文件

里面全部是各种PL/SQL脚本块,事实上,RMAN界面输入的各种命令,都会被转换成对bsp文件中各个PL/SQL块的调用,并将相关的PL/SQL块传递到目标数据库上去执行,从而完成数据库的备份恢复操作,bsp才是RMAN工具的核心。bsp中包含的PL/SQL块,主要调用了目标数据库中以下两个程序包

dbms_rcvman:                用来读取目标数据库的控制文件信息,并将这些信息传给RMAN,从而RMAN可以获取要备份的文件列表,以及其他一些信息

dbms_backup_restore:        完成具体的备份恢复工作,并在控制文件中写入备份的元数据

两个数据包已经硬编码到数据库软件中,因此数据库在关闭的情况下也可以使用RMAN

clip_image002

14、RMAN备份恢复过程中,可能会需要关闭和启动数据库,因此在目标数据库上,必须使用具有sysdba权限的用户身份进行连接,如果没有使用操作系统认证,那么要注意密码文件不要丢失,密码文件应该定期的备份

15、RMAN备份的最小单位是数据块,不是数据文件,RMAN备份时,总是一个数据块一个数据块的读取和写入,RMAN可以与DBWr进程协调一致,如果在备份过程中,发现是一个脏的数据块,可以等到DBWr进程将内存的内容刷新到数据文件以后,才备份该脏数据块,因此不会出现分离数据块的情况,同时避免了使用begin backup,也就不会产生过多的重做日志,和手工的备份是两种机制

16、RMAN只会对使用过的数据块进行备份,可以在数据库关闭时备份,RMAN备份时,从物理层面来判断数据块是否被使用,也就是说,只要某个数据块的头部被格式化过,RMAN就认为该数据块被使用过,就会备份该数据块,例如我们删除了一个大表,但是RMAN的备份不会减小多少,因为删除表的时候,只是将数据字典中的信息进行了删除,表实际所占用的数据块并没有被删除,数据块物理上还有数据,因此RMAN还会进行备份。

快速闪回区(flash recovery area)

Oracle 10g数据库中,为RMAN备份文件设置了默认的路径,也就是快速闪回区。

该区域是文件系统上的一个目录,也可以是ASM的某个磁盘组

RMAN的备份可以不存放在这个目录区中,但是闪回恢复区有很多的好处

1、简化对RMAN备份文件的管理,这个区域的文件都是OMF文件,文件的名称和大小都是Oracle自动管理

2、该区域的空间管理也是自动进行的

当RMAN需要在该区域创建新的文件,但是空间不足,Oracle会自动根据配置的冗余策略,删除不再需要的备份文件

如果该区域出现空间压力,会在告警日志中(alter<Sid>.ora)记录该信息,我们可以根据告警,适当的增加该区域的大小、修改RMAN备份的冗余策略

两个参数,设置目录和大小,必须先设置大小,再设置目录

clip_image003

只是改变了目录,已经有的文件并没有移动过来。

闪回恢复区可以存放RMAN备份文件、控制文件、联机重做日志文件、以及闪回数据库日志文件等

Oracle设置了闪回恢复区,反映了Oracle 的一个趋势,数据库自动化管理所有的工作。设置了闪回恢复区以后,我们只需要设置好冗余策略、控制大小,目录位置。剩余的工作Oracle都会自动的搞定。

clip_image004

Used表示已占用的空间大小的百分比(相对2G)

Reclaimable表示通过删除必须要的备份文件所能回收空间的百分比

Number表示文件的总数

通过database control图形界面可以更加直观的查看利用情况。

使用configure命令配置RMAN

1、RMAN用户需要sysdba权限,我们最好不要使用sys用户,因此给RMAN建立一个专用账号

2、连接目标数据库的几种方式

认证部分,本例使用的是操作系统认证,以sys的权限进行了登陆

target,表示连接的是目标数据库,而且本例指的是本机的数据库实例,最终连接到了本机数据库实例VFAST中

如果是在另外一台机器上使用RMAN客户端,那么可以使用下面的连接方式。

clip_image005

登录到本地rman

clip_image006

登陆rman到目标数据库

clip_image007

RMAN的选项中,两个选项经常使用

1、log

2、cmdfile

RMAN所有的输出都不会显示在屏幕上,而是显示在日志文件中

参数append表示在原来的日志基础上追加日志信息,不是覆盖。

如果RMAN是晚上自动运行,那么就需要添加log选项,作为一个日志记录,很重要的参数。

另外一个参数是cmdfile表示

使用RMAN连接到数据库,然后立即执行cmdfile文件里的命令,该命令可以是任何合法的RMAN命令。

下面的两个参数是经常使用的参数。

clip_image008

接下来看看命令的方式

clip_image009

RMAN命令的分类

1、独立的命令

在RMAN提示符下面,输入一条命令,立即执行

2、任务形式的命令

以RMAN{}形式执行,所有要执行的命令都放在两个{}之间,执行时,RUN模块里面的所有命令必须都成功,整个任务才算成功,其中任何一条命令失败,则整个任务失败并回滚,不会执行其中的任何一条命令。

从9i开始,可以将一些常用的配置选项设置为默认值,每次备份时,就不需要再进行这些配置,直接进行备份

configure命令进行默认配置,配置的选项包括

1、自动备份控制文件

2、自动启动某个类型的通道(磁盘或者磁带)

3、备份的冗余策略

4、默认的备份类型:备份集(backup set)or镜像副本(image copy)

5、备份片的大小

Configure的配置保存在控制文件中,原有的默认配置硬编码到了RMAN只可执行命令中,因此数据库在没有mount的时候,show命令都可以查看这些默认值,但是对我们设置的值,在这里看不见。

我们要配置某个选项的时候,不需要记住具体的命令,因为使用show all以后,命令都出来了。

通过dbconsole也可以查看具体的选项。

clip_image010

自动备份控制文件

1、每次使用RMAN进行备份,都会自动备份控制文件和spfile

2、修改了数据库结构,立刻自动备份控制文件

可以配置控制文件备份所在的目录和文件名字

默认使用的是闪回区,使用闪回区的时候,文件名字使用的OMF,即使设置了文件名字,也不起作用,因此需要改变目录。

clip_image011

更改控制文件存放路径及格式

clip_image012

自动启动某个类型的通道

这是RMAN配置中最重要的地方,也是必须配置的地方

通道表示将数据复制到备份介质的物理通道,通道类型则说明将数据复制到磁带还是磁盘,可以定义默认的通道类型

clip_image013

默认我们将数据备份到磁盘上。我们也可以备份到磁带上,就将disk替换为sbt,就表示备份到磁带上。

clip_image014

指定同时自动创建多少个通道,上面指定了三个通道,加快了备份速度。

上面的配置中说明,默认使用磁盘作为备份介质,同时启用三个磁盘通道进行备份。

clip_image015

这次备份作业,手工的创建了一个通道,覆盖了前面指定的默认设置:磁盘+3个通道。

如果是RAC,那么可以指定在哪个实例上启动通道。单实例不需要指定。

参数format,说明该通道生成的备份文件的名称格式

clip_image016

通道生成的备份文件的名称和格式。

%c:备份片的副本数

%d:数据库名称

%D:位于该月的第几天

%M:位于该年的第几个月

%n:数据库名称,向右填补到最大8个字符

%u:一个8个字符的名称,代表备份集和创建时间

%p:该备份集的备份片号,从1开始到创建的文件数

%U:一个唯一的名字%u_%p_%c

%s:备份集的编号

%t:备份集的时间戳

%T:年月日格式(YYYY-MM-DD)

参数maxopenfiles:表示当发出backup命令的时候,一个通道能够处理的文件的最大个数,默认为8

参数maxpiecesize:创建的备份片(备份出来的物理文件)的大小

Parms ‘ENV=…’:表示将数据备份到磁带上时,到磁带的通道的一些参数配置,对于不同的厂商,其Parms的值也是不同的

上面都是一些和通道有关的参数

1、默认的设备类型

2、默认启动的通道数量

3、备份时手工分配通道

4、RAC环境中指定在那个实例上启动通道(connect)

5、format指定了生成的文件名和备份路径

6、一个通道最大能够处理的文件个数

7、备份片的大小

8、如果通道是磁带,那么需要配置一些和厂商有关的参数

clip_image017

分配了三个通道,因为只有一个数据文件,只在通道1上创建了一个备份集,这个备份集包括一个备份片。

clip_image018

控制文件和spfile单独备份到了一个位置,生成了文件

clip_image019

删除了一些我们不需要的配置,每个备份片的大小是20M。

备份集(backup set)

默认的备份类型是备份集,生成备份集的时候,RMAN会将不同的数据文件里使用过的数据取出后,放在同一个物理文件里,也可以放在不同的物理文件里。产生的物理文件叫做备份片(backup piece),备份片的逻辑组合叫做备份集,备份集只是一个名字而已,将物理文件逻辑的组合在一起

一般来说,一个通道生成一个备份集,启动了三个通道,那么就生成三个备份集。如果启动了备份文件的自动备份,那么控制文件所在的备份文件会单独的生成一个备份集,不会与数据文件所在的备份集合并在一起,另外,如果指定了每个备份集包含的数据文件的个数(filesperset),那么即便只有一个通道,也有可能生成多个备份集。

控制文件所在的备份集以操作系统块作为最小单位

数据文件所在的备份集以数据块作为最小单位,因此不能放在一个备份集中

如果指定了备份片的大小,比如2G,要备份的数据文件占5G,那么在备份集中会生成3个物理文件(3个备份片),其中两个为2G,一个为1G

备份集的数量通常取决于下面的几个参数

是否启用了控制文件的自动备份,启用则备份集多1个

启用了几个通道,一个通道一个备份集

每个备份集包含的数据文件的个数,可能出现一个通道多个备份集的情况

备份片的数量则取决于备份集的数量和最大备份片的数量

镜像副本

这与手工通过操作系统的复制命令备份数据文件类似。一个数据文件生成一个镜像副本文件,整个复制过程是RMAN进行的,RMAN一个数据块一个数据块的复制,RMAN会检测每一个数据块是否出现损坏,不需要将表空间设置成为begin backup,镜像副本中包含使用过的数据块,也包含从未使用过的数据块。生成镜像副本的好处在于恢复速度相对备份集来说,更快一些。

clip_image020

备份的冗余策略

recovery window

哪些文件必须备份?默认值是7.

保留下来的备份,必须能够将数据库恢复到指定时间之内的任意一个时刻,指定这个参数为7,则表示保留的备份文件能够将数据库恢复到最近7天中的任何一个时刻。为了能够将数据库恢复到7天之内的任何一个时刻,那么备份文件必须满足保留7天。这样当我们需要恢复到7天之内的任何一个时刻的时候,找到满足条件的数据文件,配合日志进行恢复。如果我们只保留了最近4天的备份,那么如果我要恢复到6天前的一个时刻,那么就不能够实现。

redundancy

表示要保留的,能够将数据库恢复到最新状态的完整的备份文件的个数。根据策略,不再需要的备份文件则被认为是obsolete。

数据库会保存两套完整的备份。

两个冗余策略配置只能一个生效。

clip_image021

再换回redundancy

clip_image022

使用RMAN完成备份

clip_image023

使用RMAN进行备份以前,首先要做的就是看一下配置,这一步很重要

默认使用disk——disk的并行度是3(3个通道),而且是备份集的形式——通道的format定义,备份片的大小

使用RMAN进行备份时,我们使用backup命令,该命令可以独立的放在RMAN提示符里面,也可以放在RUN{}里面,最简单的命令如下

RMAN&gt;backup database;

1、分配通道,输入数据文件到指定的通道

2、在通道上创建备份集和段(备份片)

一个备份集上可能有多个段(备份片),这取决于备份片的大小

一个通道上也可能有多个备份集,取决于备份片的大小。

因为我们启动了控制文件的自动备份,因此在备份的最后,单独的生成一个备份集。

通过上面的操作提示,我们得到下面的结果。

操作日志具体见backup.log

1、分配通道、数据文件输入通道,创建备份集、备份片

2、控制文件创建备份集、备份片

clip_image024

如果数据库是非归档模式,我们需要启动数据库到mount状态,然后执行backup 命令,因为RMAN需要读取目标数据库的控制文件。

如果数据库是归档模式,数据库在打开时可以备份。

备份片的名字和位置取决于format。

clip_image025

分配了两个通道,按照指定将1、3分配给了c1,将2、4分配给了c2,然后备份了控制文件和spfile,最后执行了一条SQL语句

clip_image026

将所有的备份片放在同一个目录下面。Format参数可以在指定通道的时候指定,也可以在backup命令中指定。

如果不指定datafile的分配,那么RMAN会根据数据文件的大小,大致进行分配,尽量保持两个通道分配的平均。

手工分配通道以后,会将默认的通道覆盖掉,默认通道的分配取决于参数parallelism

clip_image027

备份集支持压缩,压缩比例大约是5:1.

设置标记tag

clip_image028

为每一个备份集或者镜像副本文件所取的名称。在恢复和list的时候,我们可以非常清楚的知道某个备份的意义。

Tag标记具体的加在了段上。

默认情况下,RMAN在备份时总是会检查数据块是否发生物理损坏,如果是为了加快备份速度而不希望RMAN进行数据块的物理检查时,可以关闭这个选项。

默认情况下,RMAN不会检查数据块是否发生逻辑损坏,backup时可以启用逻辑损坏检查。

RMAN进行备份时,只要发现新的坏块,就立即停止备份。如果发现的坏块是上次已经发现的,则继续备份。我们可以设置maxcorrupt参数来通知RMAN,只有当发现的坏块个数超过指定的数量时,才停止备份。

这是一个迫不得已的参数。尽量不要使用。

clip_image029

数据文件3、5出现的新的坏块超过10的时候,停止备份。

设置备份集的大小(前面已经讲过设置备份片的大小)

如果输入的文件的总量超过备份集的大小,那么在这个通道上创建第二个备份集。如果配置的备份集连一个数据文件都容纳不了,则会报错。

clip_image030

我们可以不进行实际的数据库备份,只是检查数据文件是否损坏。

clip_image031

离线、丢失的数据文件备份时,会报错,我们需要跳过这些数据文件,否则备份失败。

三种类型都跳过,包括跳过只读表空间。

clip_image032

在备份时,只对那些自上次备份以来新添加的数据文件进行备份。

clip_image033

在备份时,只对那些在指定的时间内没有备份过的数据文件。

clip_image034

备份归档日志和控制文件

1、RMAN备份归档日志时,首先进行一次日志切换,然后对归档进行备份

2、RMAN备份过程中如果发现当前归档日志损坏,会自动的切换到另外一个归档路径下面(前提是存在多个归档路径)查找该文件的副本

3、备份时需要指定要备份哪些归档日志

clip_image035

备份一天以来所有的归档日志。分配的通道和文件名字都遵守配置文件中指定的参数。这个和数据文件备份的区别就是输入的文件是日志。

clip_image036

从日志序列1开始备份。每一个日志文件都有一个日志序列号。

clip_image037

备份所有的归档日志。

备份归档日志的方式有下面的三种

1、根据时间

2、根据日志序列号

3、备份所有的

clip_image038

备份数据库时,同时备份归档日志文件

clip_image039

备份数据文件时,同时备份归档日志文件。

clip_image040

备份归档日志后,将成功备份的归档日志进行删除。

在进行备份之前,如果手工删除了某些归档日志文件,则备份时,由于RMAN会根据目标数据库的控制文件里所记录的归档日志文件列表,去找所有的归档日志文件,因此会发生找不到需要备份的归档日志文件的现象,RMAN因此会报错,备份失败。

clip_image041

只备份那些能够访问的归档日志文件,跳过那些不能访问的归档日志文件。

这是一个很不好的现象,如果发现归档日志丢失,马上进行数据库的全备份。

数据文件和归档日志可以同时备份,但是不会放在一个备份集里面,至少创建两个备份集。这点和控制文件的备份很类似。

clip_image042

备份当前的控制文件。

如果控制文件的自动备份设置为on,那么任何RMAN备份都会引发控制文件和spfile的自动备份,这是一个不错的参数。

增量备份

所谓增量备份,就是只对那些自从上一次备份以来,发生变化的数据块进行备份。

既可以在归档模式下面进行增量备份,也可以在非归档模式下面进行增量备份。

对于非归档模式的增量备份,每次备份时,都必须正常关闭数据库,然后启动到mount状态。

1、首先必须要有一个基本备份,包含所有使用过的数据块的备份

2、基本备份就是级别0(level=0)的备份,以后所有的增量备份都是基于这个基本备份完成的

3、如果RMAN进行增量备份时,发现没有可以参照的基本备份,RMAN会自动的进行0级备份,忽略我们指定的增量级别备份

4、增量备份级别包括1、2、3、4、5一共五个级别,0作为基本级别

增量备份分为差异增量备份、累计增量备份

差异增量备份:表示每次备份时,只对那些小于等于当前级别的备份以来变化过的数据块进行备份。

周日零点        0级备份

周一零点        2级备份

周二零点        2级备份

周三零点        1级备份

周四零点        2级备份

周五零点        2级备份

周六零点        2级备份

1、周日备份所有的数据块

2、周一备份&lt;=2,最近的就是周日,那就是备份周日以来发生变化的数据块

3、周二备份&lt;=2,最近的就是周一,那就是备份周一以来发生变化的数据块

4、周三备份&lt;=1,最近的就是周日,那就是备份周日以来发生变化的数据块

5、周四备份&lt;=2,最近的就是周三,那就是备份周三以来发生变化的数据块

6、周五只是备份当天发生变化的数据

7、周六只是备份当天发生变化的数据

差异备份

clip_image043

启动一次增量差异备份

clip_image044

累积备份

clip_image045

累计备份,只对小于当前级别最近一次备份以来发生变化的数据块进行备份。

clip_image046

无论是累计还是差异,都进行如下两步

1、向前寻找一个增量备份基点

2、备份这个基点以来发生变化的数据块

差异增量:向前寻找基点的方法是&lt;=本备份级别

累计增量:先前寻找基点的方法是&lt;本备份级别

寻找到这个基点以后,自这个基点以来发生变化的所有的数据块都进行备份。

Oracle 10g一个新的特性:能够将增量备份应用到某个镜像副本上

1、周日生成了一个镜像副本

2、周一进行增量备份,然后将产生的增量备份应用到周日所做的镜像副本上,这时周日的镜像副本中就包含了周一的数据,从而体现了最新的状态

3、周二的增量备份再应用到镜像副本上,以此类推

对镜像副本应用增量备份的最大的好处在于加快恢复速度

clip_image047

第一条语句表示要生成级别为1的、tag值为incr_upd_db,针对整个数据库的,并且应用于增量备份的镜像副本。

1、第一天执行该程序,执行第一句话的时候,由于我们没有0级备份,因此会生成整个数据库的镜像副本(该副本不是普通的副本,而是可以在其上应用增量备份)

执行第二条语句的时候,,因为没有增量备份,因此不会执行,但是也不会报错。

2、第二天执行该程序,由于已经有了第一天的0级备份,所以会生成一个1级别的增量备份,执行第二条语句的时候,会将第一条语句生成的增量备份应用到第一天所生成的镜像副本上。以后的每一天都会生成一个增量备份,并将该生成的增量备份应用到镜像副本上,如果过需要恢复,先恢复镜像副本,然后应用最近一次增量备份以来,所生成的所有归档日志,即可进行数据库恢复。

每天重复执行上面的run模块,就能够达到我们要的效果

1、每天将增量备份添加到镜像副本上

2、恢复时使用最近的镜像副本+少量的归档日志即可,恢复速度会很快

查看备份集

显示spfile都在哪些备份集里面

列出过期的备份(expired),所谓过期指的是备份的文件已经丢失(例如我们手工将文件删除,但是元数据还在控制文件里面)

1、检查并标识出当前有哪些已经过期的备份集

2、列出已经过期的备份集

3、删除已经过期的备份集

clip_image048

删除过期的备份集

clip_image049

report命令

List命令只是简单的将RMAN的元数据检索并显示出来,RMAN同时还提供了report命令,该命令具有一定的分析功能。

显示数据库的结构

clip_image050

查看结果

clip_image051

根据冗余策略,显示可以丢弃的备份文件列表,物理的将这些可以丢弃的备份文件进行删除。

clip_image052

report经常用来显示哪些文件需要进行备份

clip_image053

显示那些进行恢复时,使用增量备份文件超过3个的数据文件的列表。如果一个数据文件在继续恢复时候,需要的增量备份文件过多,那么这个恢复速度将会很慢。因此上面的显示还是有意义的。

clip_image054

显示最近三天以来没有备份过的数据文件

clip_image055

显示没有三个完整备份的数据文件的列表

clip_image056

显示如果要恢复到3天前的状态,哪些数据文件还需要备份。

上面提到的need指的是将数据库恢复到最新状态。

你可能感兴趣的:(数据库备份,手工)