Para melhor visualização, recomendo resolução de no mínimo 1280 x 800 e navegador Mozilla Firefox


segunda-feira, 2 de julho de 2012

RMAN - Backup Incremental Cumulativo vs. Backup Incremental Diferencial

Por Eduardo Legatti

Olá,

Quando falamos em estratégia de backup, implicitamente estamos planejando também uma estratégia de recovery. Bom, neste contexto, tempo e espaço em disco são geralmente levados em consideração quando fazemos os seguintes questionamentos:
  • Qual política de retenção utilizarei para os backups?
  • Com que freqüência realizarei os backups?
  • Quanto de espaço em disco tenho para armazenar os backups?
  • Quanto tempo quero gastar realizando o backup do banco de dados?
  • Quanto tempo quero gastar realizando o recovery do banco de dados?
De acordo com os questionamentos acima, poderemos então acrescentar mais um: Realizar backups que gastam menos tempo para serem efetuados e que consomem menos espaço em disco, mas em contrapartida teriam um tempo de recovery mais lento, ou realizar backups que gastam mais tempo para serem efetuados e que consomem mais espaço em disco, mas em contrapartida teriam um tempo de recovery mais rápido?

No Oracle, quando fazemos backups utilizando o RMAN, além da opção do backup FULL, temos também a opção de utilizarmos os backups incrementais. No RMAN, o termo "backup incremental" é utilizado para fazer referência a dois tipos: incremental diferencial e incremental cumulativo. O backup incremental inicial é conhecido como backup Nivel-0 (nível zero). Cada backup incremental realizado após o inicial é chamado de backup Nivel-1 (nível um). Os backups incrementais Nivel-1 podem ser cumulativos ou diferenciais:

  • O backup incremental cumulativo registra todos os blocos alterados tendo como referência o último backup Nivel-0.
  • O backup incremental diferencial registra todos os blocos alterados tendo como referência o último backup incremental, seja ele um backup incremental Nivel-0 ou Nivel-1.
A decisão entre usar backups diferenciais ou cumulativos é baseada principalmente em onde desejamos gastar o tempo e a quantidade de espaço em disco disponível.

Usar backups incrementais cumulativos significa que cada backup incremental se tornará progressivamente maior e mais demorado até que outro Nível-0 seja executado, mas durante uma operação de recuperação, somente dois conjuntos de backups (Backup sets) serão necessários (O Nivel-0 e o último Nivel-1).

Os backups incrementais diferenciais somente registram as alterações referentes desde o último backup. Portanto, cada conjunto deles poderá ser menor ou maior do que o anterior, sem nenhuma sobreposição em seus blocos de dados. Entretanto, uma operação de recuperação poderá ser mais demorada pelo fato de terem mais conjuntos de backups para serem lidos em vez de apenas dois como no cumulativo (por exemplo: O Nivel-0, e vários Nivel-1).

Vale a pena salientar que o backup incremental diferencial é o padrão no RMAN, a não ser que seja especificado a opção CUMULATIVE no comando de backup.

Exemplo:

 
Backup incremental inicial (Nivel-0)

    •  RMAN> backup incremental level 0 database tag = 'NIVEL-0';
      Backup incremental diferencial (Nivel-1) 
        • RMAN> backup incremental level 1 database tag = 'NIVEL-1';
            Backup incremental cumulativo (Nivel-1)
            • RMAN> backup incremental level 1 cumulative database tag = 'NIVEL-1';

                Bom, após esta introdução conceitual, irei demonstrar na prática a diferença entre esses dois tipos de backups incrementais de forma a computar o espaço em disco ocupado pelos backups, o tempo gasto na realização dos backups, e o tempo gasto em uma restauração e recuperação do banco de dados. Utilizarei um banco de dados pequeno como cenário. Para os testes, utilizarei o roteiro abaixo:
                1. Realizar o backup Nivel-0
                2. Realizar alterações no banco de dados
                3. Realizar o backup Nivel-1
                4. Realizar alterações no banco de dados
                5. Realizar o backup Nivel-1
                6. Realizar alterações no banco de dados
                7. Realizar o backup Nivel-1
                8. Realizar alterações no banco de dados
                9. Realizar o backup Nivel-1
                10. Realizar alterações no banco de dados
                11. Realizar o backup Nivel-1
                12. Realizar alterações no banco de dados
                13. Realizar o backup Nivel-1
                14. Realizar o restore/recover do banco de dados

                Começarei então com o cenário do backup incremental cumulativo.

                C:\>rman target /
                
                Gerenciador de Recuperação: Release 11.2.0.1.0 - Production on Dom Jul 1 22:03:56 2012
                
                Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
                
                conectado ao banco de dados de destino: BD02 (DBID=2725208301)
                
                RMAN> backup incremental level 0 database tag = 'LEVEL-0';
                
                Iniciando backup em 01/07/2012 22:04:02
                usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação
                canal alocado: ORA_DISK_1
                canal ORA_DISK_1: SID=37 tipo de dispositivo=DISK
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 0
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:04:06
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:04:41
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2MW6M1_.BKP tag=LEVEL-0 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:35
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 0
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:04:42
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:04:44
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN0_LEVEL_0_7X2MXC0H_.BKP tag=LEVEL-0 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:02
                Finalizado backup em 01/07/2012 22:04:44
                
                RMAN> sql "update scott.t1 set id=100 where rownum <=500000";  instrução sql: update scott.t1 set id=100 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:05:13
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:05:15
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:06:00
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2MYD89_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:43
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:06:01
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:06:02
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2MZSVC_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:06:02
                
                RMAN> sql "update scott.t1 set id=200 where rownum <=500000";  instrução sql: update scott.t1 set id=200 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:06:16
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:06:17
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:07:02
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N0BC7_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:45
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:07:03
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:07:04
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2N1QX9_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:07:04
                
                RMAN> sql "update scott.t1 set id=300 where rownum <=500000";  instrução sql: update scott.t1 set id=300 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:07:22
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:07:23
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:08:18
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N2FFO_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:46
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:08:20
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:08:21
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2N44DP_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:08:21
                
                RMAN> sql "update scott.t1 set id=400 where rownum <=500000";  instrução sql: update scott.t1 set id=400 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:08:24
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:08:25
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:09:20
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N4B89_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:47
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:09:22
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:09:23
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2N6289_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:09:23
                
                RMAN> sql "update scott.t1 set id=500 where rownum <=500000";  instrução sql: update scott.t1 set id=500 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:09:35
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:09:36
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:10:31
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N6KVT_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:50
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:10:32
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:10:33
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2N88PG_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:10:33
                
                RMAN> sql "truncate table scott.t1";
                
                instrução sql: truncate table scott.t1
                
                RMAN> backup incremental level 1 cumulative database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 22:10:36
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:10:36
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:11:32
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N8F6T_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:51
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 22:11:33
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 22:11:34
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2NB5K2_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 22:11:34
                
                C:\>rman target /
                
                Gerenciador de Recuperação: Release 11.2.0.1.0 - Production on Dom Jul 1 22:35:18 2012
                
                Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
                
                conectado ao banco de dados de destino: BD02 (DBID=2725208301, não aberto)
                
                RMAN> restore database;
                
                Iniciando restore em 01/07/2012 22:35:28
                usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação
                canal alocado: ORA_DISK_1
                canal ORA_DISK_1: SID=1 tipo de dispositivo=DISK
                
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                canal ORA_DISK_1: restaurando o arquivo de dados 00001 em E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00002 em E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00003 em E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00004 em E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2MW6M1_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2MW6M1_.BKP tag=LEVEL-0
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:55
                Finalizado restore em 01/07/2012 22:36:26
                
                RMAN> recover database;
                
                Iniciando recover em 01/07/2012 22:36:36
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N8F6T_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2N8F6T_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:14
                
                iniciar recuperação de mídia
                recuperação da mídia concluída, tempo decorrido: 00:00:03
                
                Finalizado recover em 01/07/2012 22:36:55
                
                 
                Após a execução acima, podemos verificar abaixo os seguintes resultados:

                BS Key  Type LV Size       Device Type Elapsed Time Backup Piece
                ------- ---- -- ---------- ----------- ------------ ---------------------------------
                1       Incr 0  551.91M    DISK        00:00:35     O1_MF_NNND0_LEVEL_0_7X2MW6M1_.BKP
                3       Incr 1   52.61M    DISK        00:00:43     O1_MF_NNND1_LEVEL_1_7X2MYD89_.BKP
                5       Incr 1  101.48M    DISK        00:00:45     O1_MF_NNND1_LEVEL_1_7X2N0BC7_.BKP
                7       Incr 1  142.22M    DISK        00:00:46     O1_MF_NNND1_LEVEL_1_7X2N2FFO_.BKP
                9       Incr 1  154.30M    DISK        00:00:47     O1_MF_NNND1_LEVEL_1_7X2N4B89_.BKP
                11      Incr 1  188.05M    DISK        00:00:50     O1_MF_NNND1_LEVEL_1_7X2N6KVT_.BKP
                13      Incr 1  196.17M    DISK        00:00:51     O1_MF_NNND1_LEVEL_1_7X2N8F6T_.BKP
                                -------                --------     ---------------------------------
                                  1.36G                00:05:17     Tempo de Recuperação: 72 Segundos

                Podemos ver pelos resultados acima que os backups ocuparam 1.36 GB de espaço em disco, levaram 5 minutos e 17 segundos para serem realizados, e que o tempo de recuperação levou cerca de 72 segundos. Pode-se notar que o tamanho dos backups incrementais cumulativos de Nivel-1 foram aumentando a cada novo backup. Pode-se notar também que apenas os backup sets 1 e 13 foram utilizados na operação de recuperação. O gráfico abaixo exibe melhor essas informações:



                Bom, agora irei realizar as mesmas operações só que fazendo backups incrementais diferenciais.
                C:\>rman target /
                
                Gerenciador de Recuperação: Release 11.2.0.1.0 - Production on Dom Jul 1 21:23:44 2012
                
                Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
                
                conectado ao banco de dados de destino: BD02 (DBID=2725208301)
                
                RMAN> backup incremental level 0 database tag = 'LEVEL-0';
                
                Iniciando backup em 01/07/2012 21:23:50
                usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação
                canal alocado: ORA_DISK_1
                canal ORA_DISK_1: SID=32 tipo de dispositivo=DISK
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 0
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:23:54
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:24:29
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2KJT6C_.BKP tag=LEVEL-0 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:35
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 0
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:24:30
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:24:31
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN0_LEVEL_0_7X2KKYQX_.BKP tag=LEVEL-0 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:24:31
                
                RMAN> sql "update scott.t1 set id=100 where rownum <=500000";  instrução sql: update scott.t1 set id=100 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:25:03
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:25:05
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:25:50
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KM1SD_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:42
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:25:51
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:25:52
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KNHNZ_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:25:52
                
                RMAN> sql "update scott.t1 set id=200 where rownum <=500000";  instrução sql: update scott.t1 set id=200 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:26:08
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:26:10
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:26:55
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KO31G_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:41
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:26:56
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:26:57
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KPJNZ_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:26:57
                
                RMAN> sql "update scott.t1 set id=300 where rownum <=500000";  instrução sql: update scott.t1 set id=300 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:27:00
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:27:01
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:27:47
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KPPJM_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:40
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:27:48
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:27:49
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KR4K2_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:27:49
                
                RMAN> sql "update scott.t1 set id=400 where rownum <=500000";  instrução sql: update scott.t1 set id=400 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:28:06
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:28:07
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:28:52
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KRRSD_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:39
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:28:53
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:28:54
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KT5X9_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:28:54
                
                RMAN> sql "update scott.t1 set id=500 where rownum <=500000";  instrução sql: update scott.t1 set id=500 where rownum <=500000  RMAN> sql "commit";
                
                instrução sql: commit
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:29:08
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:29:09
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:29:54
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KTPTC_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:38
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:29:55
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:29:56
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KW3RW_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:29:56
                
                RMAN> sql "truncate table scott.t1";
                
                instrução sql: truncate table scott.t1
                
                RMAN> backup incremental level 1 database tag = 'LEVEL-1';
                
                Iniciando backup em 01/07/2012 21:29:59
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada
                número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF do arquivo de dados de entrada
                número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF do arquivo de dados de entrada
                número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF do arquivo de dados de entrada
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:30:01
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:30:46
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KW9B8_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:37
                canal ORA_DISK_1: iniciando conjunto de backup em nível incremental do arquivo de dados 1
                canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups
                incluindo arquivo de controle atual no conjunto de backups
                incluindo SPFILE atual do conjunto de backups
                canal ORA_DISK_1: iniciando o componente 1 em 01/07/2012 21:30:47
                canal ORA_DISK_1: componente 1 finalizado em 01/07/2012 21:30:48
                handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NCSN1_LEVEL_1_7X2KXQNZ_.BKP tag=LEVEL-1 comentário=NONE
                canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01
                Finalizado backup em 01/07/2012 21:30:48
                
                C:\>rman target /
                
                Gerenciador de Recuperação: Release 11.2.0.1.0 - Production on Dom Jul 1 21:42:08 2012
                
                Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
                
                conectado ao banco de dados de destino: BD02 (DBID=2725208301, não aberto)
                
                RMAN> restore database;
                
                Iniciando restore em 01/07/2012 21:42:18
                usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação
                canal alocado: ORA_DISK_1
                canal ORA_DISK_1: SID=1 tipo de dispositivo=DISK
                
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                canal ORA_DISK_1: restaurando o arquivo de dados 00001 em E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00002 em E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00003 em E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                canal ORA_DISK_1: restaurando o arquivo de dados 00004 em E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2KJT6C_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND0_LEVEL_0_7X2KJT6C_.BKP tag=LEVEL-0
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:55
                Finalizado restore em 01/07/2012 21:43:16
                
                RMAN> recover database;
                
                Iniciando recover em 01/07/2012 21:43:30
                utilizando o canal ORA_DISK_1
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KM1SD_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KM1SD_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:08
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KO31G_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KO31G_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:07
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KPPJM_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KPPJM_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:03
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KRRSD_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KRRSD_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:07
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KTPTC_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KTPTC_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:03
                canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental
                canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups
                destino para restauração do arquivo de dados 00001: E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF
                destino para restauração do arquivo de dados 00002: E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF
                destino para restauração do arquivo de dados 00003: E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF
                destino para restauração do arquivo de dados 00004: E:\ORACLE\ORADATA\BD02\USERS01.DBF
                canal ORA_DISK_1: lendo da parte de backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KW9B8_.BKP
                canal ORA_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2012_07_01\O1_MF_NNND1_LEVEL_1_7X2KW9B8_.BKP tag=LEVEL-1
                canal ORA_DISK_1: restaurada a parte de backup 1
                canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:03
                
                iniciar recuperação de mídia
                recuperação da mídia concluída, tempo decorrido: 00:00:03
                
                Finalizado recover em 01/07/2012 21:44:07
                
                 
                Após a execução acima, podemos verificar abaixo os seguintes resultados:

                BS Key  Type LV Size       Device Type Elapsed Time Backup Piece
                ------- ---- -- ---------- ----------- ------------ ---------------------------------
                1       Incr 0  551.91M    DISK        00:00:35     O1_MF_NNND0_LEVEL_0_7X2KJT6C_.BKP
                3       Incr 1   52.61M    DISK        00:00:42     O1_MF_NNND1_LEVEL_1_7X2KM1SD_.BKP
                5       Incr 1   45.64M    DISK        00:00:41     O1_MF_NNND1_LEVEL_1_7X2KO31G_.BKP
                7       Incr 1   32.70M    DISK        00:00:40     O1_MF_NNND1_LEVEL_1_7X2KPPJM_.BKP
                9       Incr 1   31.21M    DISK        00:00:39     O1_MF_NNND1_LEVEL_1_7X2KRRSD_.BKP
                11      Incr 1   33.45M    DISK        00:00:38     O1_MF_NNND1_LEVEL_1_7X2KTPTC_.BKP
                13      Incr 1   13.48M    DISK        00:00:37     O1_MF_NNND1_LEVEL_1_7X2KW9B8_.BKP
                                -------                --------     ---------------------------------
                                   758M                00:04:32     Tempo de Recuperação: 89 Segundos

                Podemos ver pelos resultados acima que os backups ocuparam 758 MB de espaço em disco, levaram 4 minutos e 32 segundos para serem realizados, e que o tempo de recuperação levou cerca de 89 segundos. Pode-se notar que o tamanho dos backups incrementais diferenciais de Nivel-1 variaram de tamanho. Pode-se notar também que todos os backup sets foram utilizados na operação de recuperação. O gráfico abaixo exibe melhor essas informações:


                Em resumo, foi comprovado que:

                • Backups incrementais cumulativos ocupam mais espaço em disco do que os backups incrementais diferenciais
                • Backups incrementais cumulativos gastam mais tempo para serem realizados do que os backups incrementais diferenciais
                • Backups incrementais cumulativos gastam menos tempo na recuperação do banco de dados do que os backups incrementais diferenciais

                O gráfico abaixo nos mostra a comparação final dos resultados:



                No mais, independente do tipo de backup incremental realizado, seja ele cumulativo ou diferencial, uma maneira de melhorar o desempenho dos mesmos é ativar o rastreamento de alterações de blocos (Block Change Tracking). Em um backup incremental tradicional, o RMAN tem que inspecionar cada bloco do arquivo de dados no qual será feito o backup para verificar se o mesmo foi alterado desde o último backup efetuado. Dependendo do tamanho do banco de dados, isso poderá levar muito tempo. Portanto, habilitando o BCT o mesmo irá registrar em um arquivo especial os blocos que mudaram e, durante a realização do backup incremental Nivel-1, apenas estes blocos serão lidos, ou seja, o RMAN não precisará varrer todos os blocos do arquivo de dados. O comando abaixo habilita o BCT:
                • alter database enable block change tracking using file 'nome do arquivo';
                Vale a pena salientar que após habilitar o BCT, será necessário realizar um backup Nivel-0.



                9 comentários:

                Gabriel Andrade disse...

                Uma ótima explicação e esclareceu todas as minhas dúvidas.

                Gabriel Andrade disse...

                Excelente material e didática. Esclareceu bem mais meu entendimento deste comparativo.

                Wellington Prado disse...

                Ótimo trabalho !!!

                Rodrigo disse...

                Excelente Explicação Eduardo!!!

                Eduardo Legatti disse...

                Olá pessoal,

                Obrigado pela visita e pelos comentários.

                Abraços e até mais ...

                Legatti

                Armstrong disse...

                Otimo post!

                Minha dúvida é porque vc nao incluiu nos backups o archivelog.
                O ideal em um cenário de produção é incluir a cada full e cumulativo certo?

                Obrigado.

                Eduardo Legatti disse...

                Olá Armstrong,

                O objetivo do artigo foi demonstrar a diferença entre os backups incrementais cumulativos e diferenciais. Para simplificar realizei apenas o backup FULL sem incluir os archivelogs.

                Uma política de backup pode variar de ambiente para ambiente e de DBA pra DBA...

                Nos ambientes que eu administro eu costumo gerar os backups incluindo os archivelogs conforme exemplos abaixo:

                Backup FULL
                backup full database include current controlfile tag = 'FULL' plus archivelog tag = 'ARCHIVES';


                Backup Incremental Nivel-0
                backup incremental level 0 database include current controlfile tag = 'LEVEL-0_SEMANAL' plus archivelog delete all input tag = 'ARCHIVES_DIARIO';


                Backup Incremental Nivel-1
                backup incremental level 1 database include current controlfile tag = 'LEVEL-1_DIARIO' plus archivelog tag = 'ARCHIVES_DIARIO';


                Abraços

                Legatti

                Unknown disse...

                Bom dia Eduardo!
                Com relação aos Archives, onde eles entram nesse processo ? Obrigado! Abs.

                Eduardo Legatti disse...

                Olá,

                Os archived redo logs não são feitos de forma incremental, então eles não entram nesse processo. Os archives são partes integrantes da política de backup e são cruciais para o recover do banco de dados. Portanto, devem ser feitos os seus backups também durante um backup FULL ou Incremental.

                Abraços

                Legatti

                Postagens populares