- Este tópico contém 7 respostas, 2 vozes e foi atualizado pela última vez 19 anos, 10 meses atrás por ebertfm.
-
AutorPosts
-
2 de março de 2005 às 3:25 am #74320Anônimo
Boa noite,
N?o estou conseguindo restaurar um backup quente de minha base Oracle e n?o consigo entender se o erro est? no procedimento q estou fazendo para o backup ou no restore.
o script que estou usando para backup ? basicamente assim:
[b]alter system checkpoint;
alter system switch logfile;!rm -rf /bkp/*.zip
!cp /u01/oracle/admin/orcl/bdump/alert_orcl.log /bkp/outros
!cp /u01/oracle/product/8.1.7/dbs/orapw* /bkp/outros
!cp /u01/oracle/product/8.1.7/dbs/init* /bkp/outros
!cp /u01/oracle/admin/orcl/pfile/init* /bkp/outros
!cp /u01/oracle/product/8.1.7/network/admin/tns* /bkp/outros
!cp /u01/oracle/product/8.1.7/network/admin/list* /bkp/outros
!cp /u01/oracle/admin/orcl/scripts/* /bkp/outrosalter database backup controlfile to ‘/bkp/outros/control.ctl’ reuse
/
alter system set user_dump_dest = ‘/bkp/outros’
/
alter database backup controlfile to trace
/
alter system set user_dump_dest = ‘/u01/oracle/admin/orcl/udump’
/!zip -m /bkp/outros.zip /bkp/outros/*
ALTER TABLESPACE [nome] BEGIN BACKUP;
!zip /bkp/tbs_dados1.zip /u01/oracle/oradata/orcl/system01.dbf
ALTER TABLESPACE [nome] END BACKUP;alter system checkpoint;
alter system switch logfile;!sleep 30
!mv /oracle/arch/* /bkp/arch/
!zip -m /bkp/arch.zip /bkp/arch/*[/b]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> fim scriptPara restaurar edito o arquivo ora_????.ctl gerado pelo alter database backup controlfile to … para alterar o comando NORESETLOGS que vem como padr?o para RESETLOG, o resto deixo como padr?o tirando apenas os coment?rios.
Por?m qdo tento abrir o banco de dados o sistem me diz que tem que ser aberto com a op??o RESETLOG, por?m qdo a coloco ainda assim n?o funciona diz que um datafile “x” precisa de um recovery consistente. Qdo executo o RECOVER DATABASE USING BACKUP CONTROLFILE, o sistema de me pede um archive que ainda n?o foi gerado (a sequencia ? exatamente a do ?ltimo + 1).
Gostaria de saber onde est? o erro? E tb se h? como usar esse banco mesmo com esse problema?
Se algu?m puder ajudar agrade?o desde j?,
um abra?o,
2 de março de 2005 às 4:44 pm #74322AnônimoRusso, Bom dia.
Primeiro: Seu procedimento est? correto!
Para restaurar um backup da forma q vc est? querendo: de um hot backup, vc obrigatoriamente tem que utilizar o resetlogs.
Na sua frase abaixo existem duas considera??es:
“Por?m qdo tento abrir o banco de dados o sistem me diz que tem que ser aberto com a op??o RESETLOG, por?m qdo a coloco ainda assim n?o funciona diz que um datafile “x” precisa de um recovery consistente. Qdo executo o RECOVER DATABASE USING BACKUP CONTROLFILE, o sistema de me pede um archive que ainda n?o foi gerado (a sequencia ? exatamente a do ?ltimo + 1). ”
A primeira parte vc precisa de mandar a msg de erro. Existem v?rias mensagens parecidas com o texto q vc escreveu e cada uma pode ser uma coisa diferente. Tente mandar o c?digo da mensagem, basta ele.
Na segunda parte quando vc diz q faz um recovery utilizando o comando: RECOVER DATABASE USING BACKUP CONTROLFILE, sempre, no final do recover, ele vai pedir o ?ltimo mais um.
Quando vc est? utilizando este esquema, o banco n?o tem o controle de qual seria o ?ltimo arquivo de log gerado. Vc ? q tem que especificar quando chegou ao ?ltimo. Isto ? feito, quando vc faz o recovery, ele chega ao ?ltimo, e c cancela o recover.
Quando da mensagem para informar o pr?ximo archive q n?o existir, vc especifica CANCEL. A partir da? vc tem q abrir o banco com resetlogs.
Este ? o procedimento. Este tipo de recupera??o ? chamada de recupera??o incompleta. Este novo banco vai zerar os logs online (vai recri?-los ) e come?ar uma nova numera??o a partir do n?mero 1. Neste ponto ? muito importante um novo hot backup.
Terminando sua ?ltima pergunta, este banco pode ser utilizado normalmente.
Para vc ter certeza fa?a o seguinte teste:
Exatamente antes do backup crie uma tabela no banco:
SQL> create table teste (a varchar2(200));
SQL> insert into teste values ‘teste de backup’;
SQL> commit;Fa?a o backup.
Recupere o banco e abra conf. as instru??es.
Verifique neste novo banco a tabela gerada!Espero ter ajudado. Qualquer d?vida mande uma nova mensagem.
Abra?os.
2 de março de 2005 às 4:45 pm #74323ebertfmParticipanteRusso, desculpe n?o ter me identificado, eu esqueci de logar no grupo.
Abra?os.
2 de março de 2005 às 8:10 pm #74326AnônimoAplico o backup do controlfile alterado conforme disse acima, e quando tento abr?-lo com “alter database open resetlogs” ele diz que “online backup of file 1 needs more recovery to be consistent” se n?o me engano erro ORA-01195.
Tentei fazer o recovery novamente, digitando CANCEL quando ele me pede o archive que n?o tenho. Mas ocorre o mesmo problema.
Eu estava em d?vida se o alter system checkpoint/switch logfile, n?o deveriam ser no final do script, ou seja, ap?s fazer o backup de todos os datafiles.
2 de março de 2005 às 8:20 pm #74327AnônimoAh, o backup do controlfile que estou usando para restaurar ? o seguinte:
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE “ORCL” RESETLOGS noARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXDATAFILES 254
MAXINSTANCES 8
MAXLOGHISTORY 907
LOGFILE
GROUP 1 ‘/u01/oracle/oradata/orcl/redo01.log’ SIZE 100000K,
GROUP 2 ‘/u01/oracle/oradata/orcl/redo02.log’ SIZE 100000K,
GROUP 3 ‘/u01/oracle/oradata/orcl/redo03.log’ SIZE 100000K
DATAFILE
‘/u01/oracle/oradata/orcl/system01.dbf’,
‘/u01/oracle/oradata/orcl/tools01.dbf’,
‘/u01/oracle/oradata/orcl/rbs01.dbf’,
‘/u01/oracle/oradata/orcl/dados_d04.dbf’,
‘/u01/oracle/oradata/orcl/users01.dbf’,
‘/u01/oracle/oradata/orcl/indx01.dbf’,
‘/u01/oracle/oradata/orcl/dados_d.dbf’,
‘/u01/oracle/oradata/orcl/dados_d01.dbf’,
‘/u01/oracle/oradata/orcl/dados_d02.dbf’,
‘/u01/oracle/oradata/orcl/dados_a.dbf’,
‘/u01/oracle/oradata/orcl/dados_i01.dbf’,
‘/u01/oracle/oradata/orcl/dados_i02.dbf’,
‘/u01/oracle/oradata/orcl/dados_i03.dbf’,
‘/u01/oracle/oradata/orcl/dados_i04.dbf’,
‘/u01/oracle/oradata/orcl/dados_i05.dbf’,
‘/u01/oracle/oradata/orcl/dados_d03.dbf’,
‘/u01/oracle/oradata/orcl/dados_i06.dbf’
CHARACTER SET WE8ISO8859P1Em seguida fa?o o “Recover database…” ? onde ele me pede o arquivo q n?o tenho e depois fa?o o “alter database ope resetlogs” e d? o erro que relatei anteriormente.
Obrigado,
3 de março de 2005 às 9:22 pm #74331ebertfmParticipanteRusso, boa tarde.
Na m?quina onde vc est? recuperando o banco existem os logs OFFLINE gerados durante o backup?
Quando vc faz o comando “alter system switch logfile” um novo log ? gerado. De acordo com seu script, isto ? feito no in?cio e no fim do procedimento.
O banco vai precisar destes dois logs para a recupera??o.
Portanto eles devem estar no local apontado pelo par?metro :LOG_ARCHIVE_DEST do banco q vc est? recuperando.
Confira isto por favor e poste uma nova mensagem.
Abra?os.
3 de março de 2005 às 11:29 pm #74333AnônimoOs archives est?o l? sim.
Coloquei um archive log list no script, e ele mostra por exemplo:
oldest online sequence 541
next 543
current 543Mas o archive 543 ainda n?o existe no diret?rio “… dest …” nesse momento, quando aplico o recover ele termina me pedindo esse arquivo e eu digito Cancel. At? a? tudo bem, mas quanto tento abrir o banco com a op??o resetlogs, ele me d? o erro ORA-01195 e ORA-01110.
N?o consigo entender o que est? acontecendo!!!
muito obrigado pela aten?
4 de março de 2005 às 5:50 pm #74336ebertfmParticipanteRusso, bom dia.
Fa?a o seguinte teste:Fa?a o comando: alter system switch logfile 4 vezes (n?mero de logs online +1) no FINAL do backup, ou seja depois de copiar todos os datafiles.
Ele vai gerar mais quatro arquivos de log offline.
Transmita estes arquivos para a m?quina onde vc est? recuperando o backup, e tente novamente fazer o recovery e abrir o banco.
Poste uma nova mensagem com este reusltado.
Abra?os.
-
AutorPosts
- Você deve fazer login para responder a este tópico.