Pular para o conteúdo
Viewing 15 posts - 1 through 15 (of 23 total)
  • Author
    Posts
  • #107744
    Avatar de guilhermeguilherme
    Participant

      Olá pessoal,
      Estou com uma dúvida relativamente simples (utilizo Oracle 11g):
      Preciso utilizar um backup antigo da base, que estava até em outro disco, como devo proceder após copiar o mesmo pro servidor?
      Devo fazer restore do controlfile e depois somente um restore database?
      Acredito que eu NÃO deva usar o recovery database, após o restore database, pra ele não usar os archivelogs presentes no servidor… Estou correto?
      Sem fazer o recovery, a base ou os archives poderão sofrer algum problema?

      Fico no aguardo da ajuda..
      Obrigado!

      Abs

      #107745
      Avatar de rmanrman
      Participant

        @guilherme

        De modo geral é necessário:

        • Backup do spfile
        • Backup do controlfile
        • Backup do database
        • Backup de archivelog

        Considero que foi feito um HOT BACKUP FULL DATABASE, ou seja, um backup completo com o banco aberto.

        Siga os passos:

        RESTORE de SPFILE
        RESTORE de controlfile
        RESTORE DATABASE
        RECOVERY DATABASE
        OPEN DATABASE RESETLOGS

        Só para você entender melhor, todo HOT BACKUP, é um BACKUP inconsistente, o que torna o backup consistente é a aplicação do archivelog que é feito através do RECOVERY DATABASE.

        #107747
        Avatar de guilhermeguilherme
        Participant

          @rman

          Não funcionou…
          Os backups são realizados de maneira HOT e FULL com o seguinte “script”:
          backup database include current controlfile plus archivelog;

          Ao executar estes passos que você citou, o recover aplica todos archives, mantendo a base como estava anteriormente… Preciso utilizar a base de 20 dias atrás.
          O que devo fazer?

          Os passos que utilizei foram:
          restore spfile to ‘/diretorio/arquivo_spfile’ from autobackup;
          restore controlfile to ‘/diretorio/arquivo_controlfile’ from autobackup;
          restore database;
          recover database;

          Obs.: A configuração do backup do controlfile esta como ON no RMAN.
          Obrigado pela ajuda..
          Fico no aguardo

          Abs

          #107748
          Avatar de rmanrman
          Participant

            @guilherme

            O que você quer dizer como “Não funcionou”? Conseguiu abrir a base?

            #107749
            Avatar de guilhermeguilherme
            Participant

              Sim. Consegui abrir a base.
              O único problema é que esta todos os dados atuais nas tabelas, e não os dados do dia “x”.

              Abs.

              #107750
              Avatar de rmanrman
              Participant

                @guilherme

                Bom para conseguir restaurar os dados de 20 dias atrás precisamos entender como é sua política de backup e sua política de retenção de backup.

                É feito um BACKUP FULL diário? A retenção está configurada como janela ou redundância? Se for janela, 20 dias atrás está dentro da janela?

                #107752
                Avatar de guilhermeguilherme
                Participant

                  Sim, é realizado backup full todos os dias.
                  As configurações do RMAN estão default, ou seja, retention policy to redundancy 1. A única alteração nas configurações é o controlfile autobackup on.

                  Acredito então que não está na janela, sendo assim não consigo restaurar apontando um tempo (point-in-time), correto?

                  Mesmo que estivesse gostaria de saber como faz pra utilizarmos um backup antigo e abrir a base com aqueles dados.

                  Obrigado.

                  Abs

                  #107753
                  Avatar de rmanrman
                  Participant

                    @guilherme

                    Verifique os backups:


                    RMAN> list backup summary;

                    Veja se você tem algum BACKUP FULL antes da data desejada.

                    Para fazer o RECOVERY POINT-IN-TIME você deve usar o SET UNTIL TIME

                    Segue um exemplo:

                    http://ss64.com/ora/rman_pitr_example.html

                    #107754
                    Avatar de guilhermeguilherme
                    Participant

                      @rman

                      Sim, possuo outros backups mais antigos e aparecem no list backup summary.
                      O recovery point-in-time eu sei como utilizar, só não sei como fazer quando copiamos um backup antigo pro novo servidor e restauramos o mesmo. Tentei fazer mas aplica os archives recentes e a base fica com os dados atuais…

                      Se puder me ajudar…
                      Obrigado

                      Att.,

                      #107755
                      Avatar de rmanrman
                      Participant

                        @guilherme

                        Baseado na data que você quer restaurar, identifique pelo LIST BACKUP SUMMARY os seguintes arquivos:

                        • Backup do spfile
                        • Backup do controlfile
                        • Backup do database
                        • Backup de archivelog

                        Copie eles para o novo servidor.

                        Depois é só utilizar o SET UNTIL TIME, ele que vai dizer ate quando será aplicado os ARCHIVELOGs.

                        #107756
                        Avatar de guilhermeguilherme
                        Participant

                          @rman

                          Sempre devo utilizar point-in-time pra este cenário?
                          Pra ele reconhecer um backup antigo no servidor basta fazer crosscheck backup?
                          Em todos os casos de restauração/recuperação da base devo restaurar spfile e controlfile?

                          Obrigado

                          Att.,

                          #107757
                          Avatar de rmanrman
                          Participant

                            @guilherme

                            O SET UNTIL TIME diz 2 coisas para o RMAN. Qual backup full ele deve utilizar como ponto de partida, e até qual archivelog ele deve aplicar, ou seja, qual é o ponto final. Sem o SET UNTIL TIME ele vai trazer a base até o ultimo archivelog disponível.

                            O controlfile é utilizado como repositório RMAN. Ele guarda as informações do backup, ao utilizar o CROSSCHECK BACKUP é feito o cruzamento do repositório com os arquivos físicos, o que não foi encontrado é marcado como EXPIRED, e todo backup marcado como EXPIRED pode ser removido do repositório com o DELETE EXPIRED BACKUP. O controlfile conhece o backup, o CROSSCHECK BACKUP é usado para dar manutenção no repositório.

                            O spfile e controlfile são essenciais para o RESTORE/RECOVERY sempre.

                            #107758
                            Avatar de guilhermeguilherme
                            Participant

                              @rman

                              Ótimo.
                              Porém, por exemplo, se o backup foi gerado em um dia às 13 horas, eu poderei fazer o restore utilizando set until time colocando a data e horário como 00:00:00? Ou terei de saber exatamente o horário em que o mesmo foi gerado?

                              #107759
                              Avatar de rmanrman
                              Participant

                                @guilherme

                                O backup full é o ponto de partida e você só consegue avançar no tempo, nunca retroagir.

                                Se o backup é gerado diariamente as 13:00 e você quer chegar as 00:00, então você precisa do backup do dia anterior a data em questão.

                                Exemplo:

                                Quero restaurar a base para dia 15/01/2015. Preciso do backup do dia 14/01/2015 que foi feito as 13:00, aplico os archivelogs até as 00:00 do dia 15/01/2015. O RESTORE me leva as 14/01/2015 as 13:00 e o RECOVERY me leva até as 15/01/2015 as 00:00.

                                #107767
                                Avatar de guilhermeguilherme
                                Participant

                                  @rman

                                  Obrigado pela ajuda.
                                  Porém terei grande problema quando eu não souber o horário em que foi executado o backup, não concorda? Terei de “chutar” algum horário pra conseguir fazer a restauração que gostaria?

                                  Realmente é estranho usar o RMAN pra estas situações, não acha? Seria mais fácil se eu tivesse um EXPDP..

                                  Abs

                                Viewing 15 posts - 1 through 15 (of 23 total)
                                • You must be logged in to reply to this topic.
                                plugins premium WordPress