精华内容
下载资源
问答
  • 数据库备份可以分为4个备份类型。 1.全备份:创建备份完成时数据库内存在的数据的副本。 2,.差异备份:只记录自上次数据库备份后发生更改的数据。差异数据库备份比数据库备份小,而且备份速度快,因此可以更经常地...


    数据库备份可以分为4个备份类型。
    
    1.全备份:创建备份完成时数据库内存在的数据的副本。
    
    2,.差异备份:只记录自上次数据库备份后发生更改的数据。差异数据库备份数据库备份小,而且备份速度快,因此可以更经常地备份,经常备份将减少丢失数据的危险。
    
    3. 日志备份:是自上次备份事务日志后对数据库执行的所有事务的一系列记录。可以使用事务日志备份将数据库恢复到特定的即时点(如输入多余数据前的那一点)或恢复到故障点。
    
    4. 文件组备份:可以备份和还原数据库中的个别文件。可以只还原已损坏的文件,而不用还原数据库的其余部分,从而加快了恢复速度。
    

    展开全文
  • 看过《Backup and Recovery User’s Guide》的人都应该很清楚Oracle的增量备份,增量备份指的是Oracle可以做到只备份上次备份完成之后数据库发生变更的数据块,当然在这里的“上次备份”到底值得是那...

    看过《Backup and Recovery User’s Guide》的人都应该很清楚Oracle的增量备份,增量备份指的是Oracle可以做到只备份上次备份完成之后数据库发生变更的数据块,当然在这里的“上次备份”到底值得是那次却是很值得考究的。

    Oracle中,增量备份时分等级的,级别从0开始,一级一级递增,不过实际上用的最多的也就是0级和1级了,0级增量备份是后面级别的增量备份的基础,0级备份实际上就是一个完全备份,与普通的完全备份唯一的不同点是0级备份可以作为其他级别增量备份的基础,而普通的完全备份是不能的。

    从级别1开始,Oracle的增量备份分为差异增量备份和积累增量备份两种,其中差异增量备份备份的是自上一次同级别的差异备份或者是上一次更高级别的备份完成之后的数据库发生改变的数据块;而积累增量备份则是备份的自上一次上一级增量备份完成以来数据库发生改变的数据块。在《Backup and Recovery User’s Guide》“增量备份”一节中有两幅图很形象的描述了这两个增量备份之间的异同,这里如下:

    差异增量备份图示,来自Oracle

    77a9b863fbb18b89e6113a21.jpg

    积累增量备份图示,来自Oracle

    ac859d1eb7ad43a1e1fe0b21.jpg

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12448562/viewspace-705243/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/12448562/viewspace-705243/

    展开全文
  • 下面详细讲一下rman的各项配置的含义: 1、 Configuring the Default Device Type for Backups:配置缺省备份设备 缺省情况下rman默认的备份设备为磁盘disk,也可以配置其他介质作为rman的备份设备如磁带等。...
    下面详细讲一下rman的各项配置的含义: 
    

      1、 Configuring the Default Device Type for Backups:配置缺省备份设备

      缺省情况下rman默认的备份设备为磁盘disk,也可以配置其他介质作为rman的备份设备如磁带等。

    RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;
    RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;

      关于设备的类型要参考设备提供商给的说明文档,按照他们提供的设备名进行备份设备的配置。

      2、Configuring the Default Backup Type for Disk Backups: 配置磁盘备份的备份类型:备份集或者镜像拷贝(文件拷贝)

    RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY; # image copies
    RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET; # uncompressed
    

      镜像拷贝只适用于磁盘备份,磁带等其他介质只支持备份集。镜像拷贝是对数据文件等的拷贝,占用空间大消耗时间长,所以不建议使用。

      如果备份类型是备份集的话,我们还可以制定下面的压缩参数:

    RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;
    RMAN> CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO COMPRESSED BACKUPSET;
    

      这里要注意,如果想要恢复Compressed,可以再次执行以下命令,而不是用clear命令来清除Compressed参数。

    RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
    RMAN> CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO BACKUPSET;

      另外备份类型还支持并行度参数PARALLELISM,默认值为1,我们可以适当调节该参数来加快备份速度。

      3、Configuring Disk Devices and Channels:配置磁盘设备和通道

      Rman通过通道连接到目标数据库,通道执行着rman的全部工作,缺省情况下rman为所有的操作分配1个通道。

    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'd:/ora_df%t_s%s_p%p';

      如果是asm磁盘可以按照如下配置:

    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '+dgroup1';

      如果是磁带设备可以按照如下配置:

    CONFIGURE CHANNEL DEVICE TYPE sbt PARMS='ENV=mml_env_settings';

      通过PARMS指定备份设备对应的串。

      4、Configuring Control File and Server Parameter File Autobackup: 配置控制文件和参数文件自动备份

      我们可以通过下面命令来启用和停用控制文件自动备份。

    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE CONTROLFILE AUTOBACKUP OFF;

      如果控制文件自动备份启动,每次控制文件内容发生变化的时候,oracle 自动在如下目录下(如果没有指定控制文件备份格式,并且安装了快速恢复区flash recovery area的话)备份控制文件。

    …/flash_recovery_area/SID/AUTOBACKUP/2007_01_04/

      5、Configuring the Control File Autobackup Format: 配置控制文件自动备份格式

    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:/cf_%F';

      如果是asm存储设备,可以如下设置控制文件自动备份格式:

    CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE DISK TO '+dgroup1';

      清除控制文件自动备份格式命令如下:

    CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE DISK CLEAR;
    CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE sbt CLEAR;

      当然,我们也可以在执行rman操作的设置备份格式,如:

    RMAN> SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE sbt 
    TO 'controlfile_%F'; RMAN> BACKUP AS COPY DATABASE;

      以上设置在整个rman操作控制台生效。

    RMAN> RUN ...{
           SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/tmp/%F.bck';
           BACKUP AS BACKUPSET DEVICE TYPE DISK DATABASE;
          }
    

      这个set设置在rman程序块生效。

      6、Configuring the Backup Retention Policy: 配置备份保留策略

      备份保留策略有两种方式,一种是基于时间的保留策略,一种是基于冗余度的保留策略。

    based on a recovery window (the maximum number of days into the past for which 
    you can recover) or redundancy (how many copies of each backed-up
    file to keep).

      RECOVERY WINDOW参数指出了最大保留时间为从当前日期到多少天前。

    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

      Rman将保留着这期间的任何全库备份和level 0的增量备份,同时rman也保留着归档日志和level 1的增量备份,以便于可以做这个期间的基于时间点的恢复。Rman不会删除过期的备份,如果我们用REPORT OBSOLETE可以看到过期的备份并且执行DELETE OBSOLETE来删除过期的备份。

      REDUNDANCY参数指出了我们想保留几份备份文件。

    CONFIGURE RETENTION POLICY TO REDUNDANCY 3;

      查看当前备份保留策略:

    RMAN> SHOW RETENTION POLICY;

      如果我们执行以下命令来清除备份保留策略,rman将不会将任何备份标记为过期。

    CONFIGURE RETENTION POLICY TO NONE;
    展开全文
  • RMAN备份FORMAT格式中%的含义

    千次阅读 2014-07-16 10:49:05
     --备份片大小设置为m,则一个备份集包含多个备份片,且每个备份片大小为100m  4> backup  5> format '/u01/app/oracle/rmanbak/whole_%d_%U'  6> database;  7> release channel ch1;}  RMAN> ...

    使用格式串
    先看例子:Configure channel 1 device type disk format 'd:/backup/orcl/backup_%U';
    在configure 命令中经常使用格式串,在backup,resotre,allocate channel 等其他RMAN 命令中也会经常看到格式串。RMAN 提供了与格式串关联的一些语法元素。 这些元素称: 占位符, rman 将使用相应的定义值来替换他们。 例如示例中的 %U 语法元素告诉RMAN要使用系统生成的唯一表示符替换文件名。 
    使用FORMAT参数时可使用的各种替换变量,如下(注意大小写)所示:
    %a:Oracle数据库的activation ID即RESETLOG_ID。
    %c:备份片段的复制数(从1开始编号,最大不超过256)。
    %d:Oracle数据库名称。
    %D:当前时间中的日,格式为DD。
    %e:归档序号。
    %f:绝对文件编号。
    %F:基于"DBID+时间"确定的唯一名称,格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD为日期,QQ是一个1~256的序列。
    %h:归档日志线程号。
    %I:Oracle数据库的DBID。
    %M:当前时间中的月,格式为MM。
    %N:表空间名称。
    %n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8。比如数据库名JSSBOOK,则生成的名称则是JSSBOOKx。
    %p:备份集中备份片段的编号,从1开始。
    %s:备份集号。
    %t:备份集时间戳。
    %T:当前时间的年月日格式(YYYYMMDD)。
    %u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称。
    %U:默认是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,这是最常用的命名方式,执行不同备份操作时,生成的规则也不同,如下所示:
    生成备份片段时,%U=%u_%p_%c
    生成数据文件镜像复制时,%U=data-D-%d_id-%I_TS-%N_FNO-%f_%u;
    生成归档文件镜像复制时,%U=arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u;
    生成控制文件镜像复制时,%U=cf-D_%d-id-%I_%u。
    %Y:当前时间中的年,格式为YYYY。
    注:如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名

    使用RMAN>show all;
    可以显示出RMAN 配置参数为:

    CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
    CONFIGURE BACKUP OPTIMIZATION OFF; # default
    CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
    CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
    CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE MAXSETSIZE TO UNLIMITED; # default
    CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/app/oracle/product/11gr1/dbs/snapcf_orcl.f'; # default


    1.configure retention policy to redundancy 1:
    是用来决定那些备份不再需要了,它一共有三种可选项,分别是
    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
    CONFIGURE RETENTION POLICY TO REDUNDANCY 5;
    CONFIGURE RETENTION POLICY TO NONE;
    第一种recover window是保持所有足够的备份,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete。

    第二种redundancy 是为了保持可以恢复的最新的5份数据库备份,任何超过最新5份的备份都将被标记为redundancy。它的默认值是1份。

    第三种不需要保持策略,clear将恢复回默认的保持策略。

    一般最安全的方法是采用第二种保持策略。

    2.CONFIGURE BACKUP OPTIMIZATION OFF
    默认值为关闭,如果打开,rman将对备份的数据文件及归档等文件进行一种优化的算法。
    3.Configure default device type to disk:
    是指定所有I/O操作的设备类型是硬盘或者磁带,默认值是硬盘
    磁带的设置是CONFIGURE DEFAULT DEVICE TYPE TO SBT;

    4.CONFIGURE CONTROLFILE AUTOBACKUP OFF
    强制数据库在备份文件或者执行改变数据库结构的命令之后将控制文件自动备份,默认值为关闭。这样可以避免控制文件和catalog丢失后,控制文件仍然可以恢复。

    5.CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'
    是配置控制文件的备份路径和备份格式

    6.CONFIGURE DEVICE TYPE DISK PARALLELISM 1;
    是配置数据库设备类型的并行度。

    7.CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
    是配置数据库的每次备份的copy数量,oracle的每一次备份都可以有多份完全相同的拷贝。

    8.CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1
    是设置数据库的归档日志的存放设备类型

    9.CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/app/oracle/product/11gr1/dbs/snapcf_orcl.f'; # default
    是配置控制文件的快照文件的存放路径和文件名,这个快照文件是在备份期间产生的,用于控制文件的读一致性。

    10.CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/app/oracle...%d_DB_%u_%s_%p';
    是配置备份文件的备份路径和备份格式

    CONFIGURE CHANNEL DEVICE TYPE DISK  CLEAR; 用于清除上面的信道配置

    CONFIGURE EXCLUDE FOR TABLESPACE <tablespace> [CLEAR]; 此命令用于将指定的表空间不备份到备份集中, 此命令对只读表空间是非常有用的。

    RMAN> backup database format '/u01/app/oracle/rmanbak/whole_%d_%U';  --备份整个数据库

            RMAN> backup as compressed backupset                       --备份整个数据库并压缩备份集

            2> database format '/u01/app/oracle/rmanbak/whole_%d_%U';

            RMAN> run{

            2> allocate channel ch1 type disk                          --手动分配一个通道

            3> maxpiecesize=2g;                                        --指定备份片的大小为2g

            4> backup as compressed backupset                          --压缩备份集

            5> format  '/u01/app/oracle/rmanbak/whole_%d_%U' filesperset=3--指定备份集中允许容纳的文件数为个

            6> database;

            7> release channel ch1;}                                   --释放通道

            RMAN> configure device type disk parallelism 3;   --将并行度改为

            old RMAN configuration parameters:

            CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;

            new RMAN configuration parameters:

            CONFIGURE DEVICE TYPE DISK PARALLELISM 3 BACKUP TYPE TO BACKUPSET;

            new RMAN configuration parameters are successfully stored

            RMAN> backup as compressed backupset    --并行度改为之后,自动启用了个通道

            2> format '/u01/app/oracle/rmanbak/whole_%d_%U' filesperset=3

            3> database;

            Starting backup at 14-OCT-10

            allocated channel: ORA_DISK_1

            channel ORA_DISK_1: sid=148 devtype=DISK    --sid值对应v$session视图中的sid

            allocated channel: ORA_DISK_2

            channel ORA_DISK_2: sid=146 devtype=DISK

            allocated channel: ORA_DISK_3

            channel ORA_DISK_3: sid=144 devtype=DISK

            RMAN> run{

            2> allocate channel ch1 type disk

            3> maxpiecesize=100m;   --备份片大小设置为m,则一个备份集包含多个备份片,且每个备份片大小为100m

            4> backup

            5> format '/u01/app/oracle/rmanbak/whole_%d_%U'

            6> database;

            7> release channel ch1;}

            RMAN> list backupset tag=TAG20101014T171115;

            List of Backup Sets

            ===================

            BS Key  Type LV Size       Device Type Elapsed Time Completion Time

            ------- ---- -- ---------- ----------- ------------ ---------------

            21      Full    690.30M    DISK        00:01:39     14-OCT-10

              List of Datafiles in backup set 21

              File LV Type Ckp SCN    Ckp Time   Name

              ---- -- ---- ---------- ---------- ----

              1       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/system01.dbf

              2       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/undotbs01.dbf

              3       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/sysaux01.dbf

              4       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/users01.dbf

              5       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/example01.dbf

              6       Full 1648791    14-OCT-10 /u01/app/oracle/oradata/orcl/tbs1.dbf

              Backup Set Copy #1 of backup set 21

              Device Type Elapsed Time Completion Time Compressed Tag

              ----------- ------------ --------------- ---------- ---

              DISK        00:01:39     14-OCT-10      NO         TAG20101014T171115

                List of Backup Pieces for backup set 21 Copy #1

                BP Key  Pc# Status      Piece Name

                ------- --- ----------- ----------

                21      1   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_1_1

                22      2   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_2_1

                23      3   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_3_1

                24      4   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_4_1

                25      5   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_5_1

                26      6   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_6_1

                27      7   AVAILABLE   /u01/app/oracle/rmanbak/whole_ORCL_0nlqemtj_7_1

            BS Key  Type LV Size       Device Type Elapsed Time Completion Time

            ------- ---- -- ---------- ----------- ------------ ---------------

            22      Full    6.80M      DISK        00:00:01     14-OCT-10

                    BP Key: 28   Status: AVAILABLE  Compressed: NO  Tag: TAG20101014T171115

                    Piece Name: /u01/app/oracle/rmanbak/whole_ORCL_0olqen0s_1_1

              Control File Included: Ckp SCN: 1648817      Ckp time: 14-OCT-10

              SPFILE Included: Modification time: 14-OCT-10

        -----------------------------------------------------------------------------------------------------------------------

        2.备份数据文件

            Oracle数据文件及表空间的管理请参考:Oracle 表空间与数据文件

            RMAN> backup as copy datafile 4                                             --备份类型为镜像备份

            2> format '/u01/app/oracle/rmanbak/df_%d_%U';

            RMAN> list copy; 

            RMAN> backup datafile 4,5,6 format '/u01/app/oracle/rmanbak/df_%d_%U';      --备份类型为备份集

        -----------------------------------------------------------------------------------------------------------------------

        3.备份表空间

            Oracle数据文件及表空间的管理请参考:Oracle 表空间与数据文件

            RMAN>  backup tablespace users,example format '/u01/app/oracle/rmanbak/tb_%d_%U';

            RMAN> backup tablespace temp;  --临时表空间不需要备份

            Starting backup at 14-OCT-10

            using channel ORA_DISK_1

            using channel ORA_DISK_2

            RMAN-00571: ===========================================================

            RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

            RMAN-00571: ===========================================================

            RMAN-03002: failure of backup command at 10/14/2010 18:56:12

            RMAN-20202: tablespace not found in the recovery catalog

            RMAN-06019: could not translate tablespace name "TEMP"

        -----------------------------------------------------------------------------------------------------------------------

        4.备份控制文件

            Oracle 控制文件的详细介绍请参考:Oracle 控制文件(CONTROLFILE)

            RMAN> configure controlfile autobackup on;--自动备份控制文件置为on状态,将自动备份控制文件和参数文件

            old RMAN configuration parameters:

            CONFIGURE CONTROLFILE AUTOBACKUP OFF;

            new RMAN configuration parameters:

            CONFIGURE CONTROLFILE AUTOBACKUP ON;

            new RMAN configuration parameters are successfully stored

            注:在备份system01.dbf或system表空间时将会自动备份控制文件和参数文件,即使自动备份控制文件参数为off

            --单独备份控制文件及参数文件

            RMAN> backup current controlfile;

            --备份数据文件时包含控制文件

            RMAN> backup datafile 4 include current controlfile;

            RMAN> sql "alter database backup controlfile to ''/tmp/orclcontrol.bak''";

            sql statement: alter database backup controlfile to ''/tmp/orclcontrol.bak''

            RMAN>  sql "alter database backup controlfile to trace as ''/tmp/orclcontrol.sql''";

            sql statement: alter database backup controlfile to trace as ''/tmp/orclcontrol.sql'';

            --单独备份spfile

            RMAN> backup spfile format '/u01/app/oracle/rmanbak/sp_%d_%U';

            RMAN> backup copies 2 device type disk spfile;

        -----------------------------------------------------------------------------------------------------------------------

        5.备份归档日志文件

            备份归档日志时仅仅备份归档过的数据文件(不备份联机重做日志文件)

            备份归档日志时总是对归档日志做完整备份

            RMAN对归档日志备份前会自动做一次日志切换,且从一组归档日志中备份未损坏的归档日志

            RMAN会自动判断哪些归档日志需要进行备份

            归档日志的备份集不能包含其它类型的文件

            关于Oracle日志文件请参考:Oracle 联机重做日志文件(ONLINE LOG FILE)

            关于Oracle归档日志请参考:Oracle 归档日志

            RMAN> backup

            2> format '/u01/app/oracle/rmanbak/lf_%d_%U'

            3> archivelog all delete input;   --delete input 删除所有已经备份过的归档日志

            RMAN> backup            --此种写法实现了上述相同的功能

            2> archivelog all delete input

            3> format '/u01/app/oracle/rmanbak/lf_%d_%U';

            RMAN>  backup archivelog sequence between 50 and 120 thread 1 delete input;

            RMAN> backup archivelog from time "sysdate-15" until time "sysdate-7";

            RMAN> backup

            2> format '/u01/app/oracle/rmanbak/lf_%d_%U'

            3> archivelog from sequence=80

            4> delete input;

            使用plus archivelog时备份数据库完成的动作(backup database plus archivelog)

                1.首先执行alter system archive log current 命令(对当前日志归档)

                2.执行backup archivelog all 命令(对所有归档日志进行备份)

                3.执行backup database命令中指定的数据文件、表空间等

                4.再次执行alter system archive log current

                5.备份在备份操作期间产生的新的归档日志

     

            --执行下面的命令,并观察备份列出的信息,可以看到使用plus archivelog时使用了上面描述的步骤来进行备份

            RMAN> backup database plus archivelog

            2> format  '/u01/app/oracle/rmanbak/lg_%d_%U' delete input;

     

        6.备份闪回区

            RMAN> backup recovery area;

                使用backup recovery area时,将备份位于闪回区且未进行过备份的所有文件,这些文件包括完整、增量备份集、自动备份的

                控制文件(假定使用闪回区作为备份路径时)、归档日志、数据文件的镜像副本等。闪回日志,当前的控制文件。

                联机重做日志不会被备份

            RMAN> backup recovery files;

                使用backup recovery files时,将备份磁盘上未进行过备份的所有恢复文件,而不论是否位于闪回区   

            注:使用上述两条命令时,备份目的地必须是磁带

        7.总结:

            数据文件的备份集对于未使用的块可以执行增量备份,可以跳过未使用过的数据块来进行压缩备份

            对于控制文件、归档日志文件、spfile文件则是简单的拷贝,并对其进行打包压缩而已

    三、备份的其它特性

        1.并发:主要用于提高备份的速度,可以分为手动并发或自动并发

            手动并发:通过分配多个通道并将文件指定到特定的通道

                RMAN> run {

                2>  allocate channel ch1 device type disk;

                3>  allocate channel ch2 device type disk;

                4>  allocate channel ch3 device type disk;

                5> backup incremental level=0

                6>  format '/u01/app/oracle/rmanbak/df_%d_%U'

                7>  (datafile 1 channel ch1 tag='sys')

                8>  (datafile 3 channel ch2 tag='aux')

                9>  (datafile 2,4,5,6 channel ch3 tag='other');

                10> sql 'alter system archive log current';

                11> release channel ch1;

                12> release channel ch2;

                13> release channel ch3;

                14> }  

     

            自动并发:使用configure配置并发度即可

                RMAN> configure device type disk parallelism 3 backup type to backupset;

               

                --下面的备份将自动启用3个通道执行并发

                RMAN>  backup database format '/u01/app/oralce/rmanbak/p3_%U';

        2.复用备份

            即将一个备份集复制多份,同一备份集,Oracle最多可复用4个

            手工指定:

                RMAN> backup copies 2 datafile 4

                2> format '/u01/app/oracle/rmanbak/d1/df_%U',

                3>        '/u01/app/oracle/rmanbak/d2/df_%U';  

            自动指定:配置下列参数

                RMAN> configure datafile backup copies for device type disk to 2;  --指定备份数据文件副本数

                RMAN> configure archivelog backup copies for device type disk to 2;--指定备份日志文件副本数

        3.备份备份集

            bacup backupset

        4.镜像备份

            镜像备份时会检查数据文件中是否存在坏块,可以使用nochecksum来跳过坏块的检测

            也可以指定maxcorrupt判断有多少个坏块时,Oracle将停止该镜像备份

                   RMAN> backup as copy

            2> datafile 4 format '/u01/app/oracle/rmanbak/users.dbf' tag='users'

             --以下命令等同于上一条

            RMAN> copy datafile 4 to '/u01/app/oracle/rmanbak/user01.dbf';

             RMAN> backup as copy

            2> archivelog like 'o1_mf_1_118_6chl1byd_.arc'

            3> format '/u01/app/oracle/rmanbak/arch_1015.bak';

             --使用下面的configure命令将backup type设置为copy之后,则缺省的备份为镜像副本

            RMAN> configure device type disk parallelism 1 backup type to copy;

             RMAN> backup datafile 4  --由于上面的设置,则此命令备份的将是镜像副本

            2> format '/u01/app/oracle/rmanbak/users.dbf.bak' tag=users;   

             --使用并行度来执行镜像拷贝

            RMAN> configure device type disk parallelism 4;

             RMAN> backup as copy #3 files copied in parallel

            2> (datafile 1 format '/u01/app/oracle/rmanbak/df1.bak')

            3> (datafile 2 format '/u01/app/oracle/rmanbak/df2.bak')

            4> (datafile 3  format '/u01/app/oracle/rmanbak/df3.bak');

           

            镜像备份时指定子句DB_FILE_NAME_CONVERT来实现镜像路径转移,该子句也是一个初始化参数,用于primary db 到standby db

                的数据文件的转换

               

                DB_FILE_NAME_CONVERT = ('string1' , 'string2' , 'string3' , 'string4' ...)

                用string2替换string1,string4替换string3

               

                RMAN> backup as copy device type disk

                2> db_file_name_convert('oradata/orcl','bk/rmbk')

                3> tablespace users;       

               

        5.压缩备份集   

            RMAN> configure channel device type disk format '/u01/app/oracle/rmanbak/%d_%U.bak';

           

            --下面的命令使用了参数as compressed来实现手动压缩

            RMAN> backup as compressed backupset database;

            RMAN> backup as compressed backupset datafile 4,5,6;

           

            --下面使用configure命令配置自动压缩备份集功能,则后续的备份会自动使用压缩功能

            RMAN> configure device type disk parallelism 4 backup type to compressed backupset;

           

            --由于设置了自动压缩,则下面的命令将压缩备份的system表空间及控制文件、参数文件

            RMAN> backup tablespace system tag=system;

           

        6.使用tag标记

            tag标记可以为备份集或映像副本指定一个有意义的名字,以备后续使用,其优点如下

                为备份集或映像副本提供描述信息

                能够在list 命令中使用更好的定位备份文件

                能够在restore和switch命令中使用

                同一个tag在多个备份集或多个映像副本中使用

                当未指定tag标记时,则系统产生缺省的tag标记,其格式为:TAGYYYYMMDDTHHMMSS

           

            RMAN> backup as compressed backupset datafile 1,2,3 tag='Monthly_full_bak';

           

            RMAN> backup as compressed backupset tablespace users tag='Weekly_full_bak';

                   

            RMAN> list backupset tag=monthly_full_bak; 

     

        7.增量备份

            差异增量备份将备份自上次增量备份以来所有发生改变的数据块

            累计增量备份将备份自上次0级增量备份以来所有改变过的数据块

           

            --下面启用0级增量备份

            RMAN> run{

            2> allocate channel ch1 type disk;

            3> backup incremental level 0 database

            4> format '/u01/app/oracle/rmanbak/db_%d_%U'

            5> tag=db_inc_0;

            6> release channel ch1;

            7> }

     

            SQL> select sid,sofar,totalwork from v$session_longops;  --查询备份情况

     

            --下面启用1级差异增量备份

            RMAN> run{

            2> allocate channel ch1 type disk;

            3> backup incremental level 1 database

            4> format '/u01/app/oracle/rmanbak/db1_%d_%U'

            5> tag=db_inc_1;

            6> release channel ch1;

            7> }

     

            --下面启用1级累计增量备份

            RMAN> run{

            2> allocate channel ch1 type disk;

            3> backup incremental level 1 cumulative database

            4> format '/u01/app/oracle/rmanbak/dbc_%d_%U'

            5> tag=db_inc_c_1;

            6> release channel ch1;

            7> }

     

        8.启用块变化跟踪

            启用块变化跟踪即是指定一个文件用于记录数据文件中哪些块发生了变化,在RAMN进行增量备份时,仅仅需读取该文件来备份这些

            发生变化的块,从而减少了备份时间和I/O资源。

            使用下面的命令来启用块变化跟踪

                ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '<dir>'

     

            SQL> alter database enable block change tracking

              2  using file '/u01/app/oracle/oradata/orcl/blk_ch_trc.trc';

     

            SQL> ho ls -lht /u01/app/oracle/oradata/orcl/blk_ch_trc.trc

            -rw-r----- 1 oracle oinstall 12M Oct 15 19:41 /u01/app/oracle/oradata/orcl/blk_ch_trc.trc

     

            SQL> select * from v$block_change_tracking;

     

            STATUS     FILENAME                                           BYTES

            ---------- --------------------------------------------- ----------

            ENABLED    /u01/app/oracle/oradata/orcl/blk_ch_trc.trc     11599872

     

            SQL> alter database disable block change tracking; --disable后块变化跟踪文件被自动删除

     

            SQL>  select * from v$block_change_tracking;

     

            STATUS     FILENAME                                           BYTES

            ---------- --------------------------------------------- ----------

            DISABLED       

           

        9.备份保留策略

            保留策略主要是保留备份副本的一些规则,通常用于满足恢复或其他的需要(比如磁盘空间或磁带空间大小限制)

            备份保留策略分为冗余和恢复窗口,这两种保留策略互不兼容,要么使用前者,要么使用后者

            备份冗余

                默认为1,可以通过RMAN> configure retention policy to redundancy 2;来修改

                当为1时,RMAN会为每个数据文件、归档日志、控制文件生成一个备份。可以使用report obsolete命令查看备份数多于1的备份

                并使用delete obsolete来删除过时的备份

               

            恢复窗口       

                恢复窗口允许完成恢复到过去某个时间点的时点恢复,通常设定为多少天

                使用命令RMAN> configure retetion policy to recovery window of 7 days

                该命令将确保具有足够的数据文件和归档日志来执行能够返回一个星期中任意时间点的不完全恢复,且允许删除随着时间推移

                    而变为废弃的备份,即应当满足该条件:SYSDATE - BACKUP CHECKPOINT TIME >= 7

                对于大于天但是是恢复所需要的备份依然会被保留

               

            清除备份保留策略

                RMAN> configure retention policy clear;

               

            注意obsolete 与expired

                obsolete:是指根据保留策略来确定该备份是否在恢复的时候需要,如不在需要或有更新的备份来替代,则该备份集被置为

                    obsolete,即废弃的备份集或镜像副本。

                expired: 是指执行crosscheck时,根据存储仓库中记录的备份信息来定位备份集或镜像副本,而找不到对应的备份集或镜像副

                    本,则这些备份集或镜像副本被置为expired。

     

        10.使用BACKUP ... VALIDATE验证数据文件逻辑坏块,损坏的坏块将被记录到v$database_block_corruption视图

                BACKUP VALIDATE CHECK LOGICAL DATABASE ARCHIVELOG ALL;

               

    四、备份相关的动态性能视图及监控

        1.相关视图

            v$backup_files

            v$backup_set

            v$backup_piece

            v$backup_redolog

            v$backup_spfile

            v$backup_device

            v$rman_configuration

            v$archived_log

            v$backup_corruption

            v$copy_corruption

            v$database_block_corruption

            v$backup_datafile

           

        2.查看channel对应的server sessions

                使用set command id命令

            查询v$process和v$session判断哪一个会话与之对应的RMAN通道

            SQL> select sid,username,client_info from v$session

              2  where client_info is not null;

     

                   SID USERNAME                       CLIENT_INFO

            ---------- ------------------------------ ------------------------------

                   146 SYS                            rman channel=ORA_DISK_1

                   148 SYS                            rman channel=ORA_DISK_2

                   150 SYS                            rman channel=ORA_DISK_3

               

            --下面使用了set command id命令

            RMAN> run{

            2> allocate channel ch1 type disk;

            3> set command id to 'rman';

            4> backup as copy datafile 4

            5> format '/u01/app/oracle/rmanbak/dd_%U';

            6> }

               

            SQL> select sid,username,client_info from v$session

              2   where client_info is not null;

     

                   SID USERNAME                       CLIENT_INFO

            ---------- ------------------------------ ------------------------------

                   140 SYS                            id=rman

              

            SQL> select sid,spid,client_info

              2  from v$process p ,v$session s

              3  where p.addr = s.paddr

              4  and client_info like '%id=%';

     

                   SID SPID         CLIENT_INFO

            ---------- ------------ ------------------------------

                   140 5002         id=rman 

              

            --查看rman完整的进度      

            SQL> select sid,serial#,context,sofar,totalwork,

              2  round(sofar/totalwork*100,2) "% Complete"

              3  from v$session_longops

              4   where opname like 'RMAN:%'

              5  and opname not like 'RMAN:aggregate%'

              6  and totalwork!=0;    

     

            --通过如下SQL获得rman用来完成备份操作的服务进程的SID与SPID信息:

            select sid, spid, client_info

              from v$process p, v$session s

             where p.addr = s.paddr

               and client_info like '%id=rman%'

         

        3.Linux下的rman自动备份

            备份脚本+crontab

            bak_inc0 :0级增量备份,每周日使用0级增量进行备份

            bak_inc1 :1级增量备份,每周三使用1级增量备份,备份从周日以来到周三所发生的数据变化

            bak_inc2 :2级增量备份,备份每天发生的差异增量。如从周日到周一的差异,从周一到周二的差异

           

            --下面是级增量的脚本,其余级与级依法炮制,所不同的是备份级别以及tag标记

            [oracle@oradb scripts]$ cat bak_inc0

            run {

            allocate channel ch1 type disk;

            backup as compressed backupset  incremental level 0

            format '/u01/oracle/bk/rmbk/incr0_%d_%U'

            tag 'day_incr0'

            database plus archivelog delete input;

            release channel ch1;

            }

                   

            逐个测试脚本

            [oracle@oradb bk]$ rman target / log=/u01/oracle/bk/log/bak_inc0.log /

            > cmdfile=/u01/oracle/bk/scripts/bak_inc0.rcv

            RMAN> 2> 3> 4> 5> 6> 7> 8> 9>

            [oracle@oradb bk]$

     

            编辑crontab

            [root@oradb ~]# whoami

            root

            [root@oradb ~]# crontab -e -u oracle

     

            45 23 * * 0 rman target / log=/u01/oracle/bk/log/bak_inc0.log append cmdfile = /u01/oracle/bk/scripts/bak_inc0.rcv

            45 23 * * 1 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile = /u01/oracle/bk/scripts/bak_inc2.rcv

            45 23 * * 2 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile = /u01/oracle/bk/scripts/bak_inc2.rcv

            45 23 * * 3 rman target / log=/u01/oracle/bk/log/bak_inc1.log append cmdfile = /u01/oracle/bk/scripts/bak_inc1.rcv

            45 23 * * 4 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile = /u01/oracle/bk/scripts/bak_inc2.rcv

            45 23 * * 5 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile = /u01/oracle/bk/scripts/bak_inc2.rcv

            45 23 * * 6 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile = /u01/oracle/bk/scripts/bak_inc2.rcv

            "/tmp/crontab.XXXXInBzgR" 7L, 791C written

            crontab: installing new crontab

            保存之后重启crontab

            [root@oradb ~]# service crond restart

            Stopping crond: [  OK  ]

            Starting crond: [  OK  ]

            检查自动备份是否成功执行

    展开全文
  • 格式的定义:%p:piece备份段号。 %d:database 数据库名。 %s:备份集号。%c(copy号):总为1。 %u:自动生成的8个字符的唯一名称。 %t:时间。默认格式为 %U=...
  • 备份概述数据备份分类完整数据库备份文件备份部分备份差异备份日志备份事务日志备份最常用的备份方法选择备份策略和恢复模式备份策略简单恢复模式下的备份简单恢复模式下的完整数据库备份+差异数据库备份完整恢复...
  • RMAN备份FORMAT格式中%a的含义

    千次阅读 2012-08-09 18:46:50
    oracle文档对%a的描述是:%a Specifies the activation ID... rman备份并保存,查询%aRMAN> backup tablespace users format '/home/oracle/think_%a'; 由此,可知%a为:790774120 查询x$kccdisys@ORCL> SELECT didb
  • 1.增量的含义是自上次备份以来发生改变的数据页 2.增量备份并没有降低物理IO,也是全扫描 3.增量备份不是很适合 OLTP 交易系统 4.增量备份适合数据仓库 –incremental-basedir=name //指定全备位置(也可能是增量...
  • 备份IIS

    2018-09-24 23:18:00
    备份IIS配置其实和备份系统含义差不多,为了方便系统或者IIS出现故障后能够及时恢复到某节点上,所以我们要备份下。 具体备份步骤如下(PS:下面转自百度经验): IIS备份: 首先在开始菜单的运行框中输入inetmgr...
  • 原文:数据库压缩备份提高备份效率 背景 在数据库的备份过程中有很多参数,前几日发现公司的备份数据库job运行的很慢,就去研究了一下,发现在... 为了更好地了解数据库备份,我们首先要知道代码以及参数的含义。...
  • 算是挺全的了,有SQL有真相一、Oracle备份方式分类: Oracle有两类备份方式: (1)物理备份:是将实际组成数据库的操作系统...物理备份又分为冷备份、热备份; (2)逻辑备份:是利用SQL语言从数据库中抽取数据并存
  • oracle物理备份和逻辑备份理解

    千次阅读 2014-03-06 19:56:56
    这是一系列关于oracle备份中热备和冷备的讲解, 详细的讲解了oracle热备中的用户管理备份和oracle管理备份
  • Oracle备份

    2008-12-08 20:02:00
    ORACLE数据库有三种标准的备份。导出/导入(EXPORT/IMPORT) 、冷备份、热备份。 导出备份是一种逻辑备份,这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。 冷备份和热备份是...
  • 通过exp命令可以对Oracle数据库进行备份操作,其命令含义是:exp 用户名/密码@数据库所在ip地址:数据库端口号/数据库的service-name file=存储到的位置 exp MISPS/MISPS@orcl file=d:\MISPS.dmp 远程导出的方法 ...
  • Postgresql的三种备份方式

    万次阅读 2018-09-13 15:52:04
    按照备份后的文件类型,可以分为物理备份(文件系统级别的备份)和逻辑备份备份后的文件是sql文件或特定格式的导出文件);按照备份过程中是否停止数据库服务,可分为冷备份备份过程中停止数据库服务)和热备份...
  • 归档和备份

    千次阅读 2020-10-23 08:48:52
    计算机系统管理员的一个主要任务就是保护系统的数据安全,其中一种方法是通过时时备份系统文件,来保护 数据。即使你不是一名系统管理员,像做做拷贝或者在各个位置和设备之间移动大量的文件,通常也是很有帮助的。 ...
  • 备份恢复类 面试题

    2016-04-06 22:59:18
    1. 备份如何分类 逻辑备份,物理备份,冷备份,热备份,rman备份和全备份 逻辑备份:exp/imp和expdp/impdp可以指点表,方案等逻辑 ...2. 归档是什么含义 归档就是归档备份重做日志。以便于做介质恢复 3
  • 备份文件目录结构 备份文件总目录databak: databak/Installation environment--环境备份目录 databak/project/package--项目部署包备份目录 databak/project/logs--项目日志备份目录 databak/file--文件备份...
  • 备份恢复2——备份恢复结构*

    千次阅读 2012-05-04 07:16:28
    1、备份恢复结构: 当执行备份恢复操作时,经常需要提供数据文件的动态信息,为了获得数据文件的动态信息,可以产销动态性能视图:v$datafile和v$datafile_header。 其中 v$datafile 的动态信息来自于控制文件; ...
  • 备份 mysql数据

    千次阅读 2010-10-12 11:06:00
    Mysql数据库的常用备份方法是使用使用mysqldump, 其命令格式如下: # mysqldump [options] database [tables] 其中参数的含义为: options:代表mysqldump的选项,通过mysqldump –help可以查到。 database: 代表...
  • mysql数据备份

    2011-03-21 13:30:00
    Mysql数据库的常用备份方法是使用使用mysqldump, 其命令格式如下: # mysqldump [options] database [tables] 其中参数的含义为: options:代表mysqldump的选项,通过mysqldump –help可以...
  • Linux文件备份

    2015-05-26 11:18:32
    一个应用中有很多的重要数据,为了在数据灾难发生后我们能够及时、迅速、准确的恢复我们的应用到一个比较合适的位置,我们必须定期的对我们的数据资料进行备份,今天给大家分享的就是Linux文件备份的方法。...
  • tar备份与恢复

    2019-10-04 14:49:43
    tarball备份包 归档和压缩 归档的含义 将许多零散的文件整理为一个文件 文件总的大小基本不变 压缩的含义 按某种算法减小文件所占用空间的大小 恢复是按对应的逆向算法解压 tar工具的常用选项 tar 集成备份工具 -...
  • 交换机文件备份

    2018-04-10 21:42:34
    交换机文件备份一、 实验目的1、 了解什么是交换机的文件备份;2、 了解TFTP服务器的用法以及备份的命令;3、 了解TFTP服务器和FTP服务器使用的不同场所;4、 了解什么叫文件上传;二、 应用环境对交换机做好...
  • MySQL定时备份数据库(全库备份

    千次阅读 2019-09-05 19:08:54
    MySQL定时备份数据库(全库备份) 一、MySQL数据备份 1.1、 mysqldump命令备份数据 在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump,...
  • 上篇文章我见到介绍了innobackupex的安装,本文详细介绍以下innobackupex备份及还原的使用,并分享个人所写的备份及还原脚本.
  • ORACLE备份方法

    2010-12-02 09:56:00
    备份的方法  ORACLE数据库有三种标准的备份。导出/导入(EXPORT/IMPORT) 、冷备份、热备份。  导出备份是一种逻辑备份,这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 73,508
精华内容 29,403
关键字:

备份的含义