Re: RES: RES: RES: [oracle_br] Re: Recover database

2017-02-22 Por tôpico jlchia...@yahoo.com.br [oracle_br]
"Uma ultima pergunta: então antes de começar o recover database, o RMAN 
verifica os archivelog que ele irá precisar, e como ele não encontra ele dá 
aquele erro?"

Isso aí...

"Saideira: o melhor para este caso seria fazer um recover database until 
sequence xxx; ou fazer um restore dos archivelog em disco e depois aplicar?"

Depende do que vc precisa : se vc confirmou que tem sem faltar nenhum todos os 
archives que contém as sequences até xxx E é aceitável vc perder os dados das 
transações posteriores, que iniciaram após os logs archivados nesse arquive com 
essa sequence  ok, vc pede um recover until sequence x e vai que vai
 Agora, se vc ** exige ** que o recover atualize  o banco até o último 
últimíssimo SCN registrado nos seus archives vc pede um UNTIL CANCEL (ou 
equivalentes) e aí não tem jeito, para que esse recover "completíssimo" 
aconteça, se os archives não estão em disco E se o RMAN não conseguir localizar 
/ restaurar sozinho os backups que os contém  vc ** TEM ** que providenciar as 
sequences TODAS que ele pedir, não tem por onde...
 
 []s
 
   Chiappa

RES: RES: RES: [oracle_br] Re: Recover database

2017-02-22 Por tôpico 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]
Chiappa,

Perfeito, entendido...

 

Uma ultima pergunta: então antes de começar o recover database, o RMAN verifica 
os archivelog que ele irá precisar, e como ele não encontra ele dá aquele erro?

Saideira: o melhor para este caso seria fazer um recover database until 
sequence xxx; ou fazer um restore dos archivelog em disco e depois aplicar?

 

Grato,

Ednilson

 

De: 
sentto-1682896-121558-1487782614-ednilson.silva=jbs.com...@returns.groups.yahoo.com
 
[mailto:sentto-1682896-121558-1487782614-ednilson.silva=jbs.com...@returns.groups.yahoo.com]
 Em nome de jlchia...@yahoo.com.br [oracle_br]
Enviada em: quarta-feira, 22 de fevereiro de 2017 13:57
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: RES: RES: [oracle_br] Re: Recover database

 

  

Opa : sobre os backups, não conheço essa solução (StarOnce) então não posso 
dizer nada sobre integridade (em especial coisas se ela tem proteção contra, 
digamos, tentar backupear  um archive no exato instante em que ele está ainda 
aberto e em uso pelo RDBMS Oracle) - eu sempre dou ** total ** preferência para 
backups via RMAN justamente por confiar mais que esse tupo de coisa nunca 
acontece, já que o RMAN ** reconhece ** os locks/proteções de arquivos impostos 
pelo RDBMS mas ok, por desconhecimento não posso comentar nada sobre ela, 
repito... 
 Isso traz um outro ponto à baila : Obviamente, o RMAN só conhece os backups 
feitos por ele : se vc tá usando essa tal solução de terceiros (StarOnce), a 
menos que ela tenha alguma "ligação" com o RMAN via library/DLL/whatever, o 
RMAN *** não saberá NADICA DE NADA *** sobre ela, então o controle desses 
backups vc faz à parte , com as tools/ferramentas do fornecedor, 
necessariamente
 
 Sobre sua outra pergunta, o funcionamento do RDBMS e do RMAN é : o banco 
possui um número (uma SEQUENCE numérica, se vc quiser) constantemente crescendo 
a cada poucos segundos ** ou ** quando uma transação é startada (cada Transação 
sempre vai ter seu 'número' único), e esse "sequencial" se chama SCN, e ele é 
referenciado nos datafiles (quando as coisas que estão nos buffers são 
efetivadas no datafile fica registrado no cabeçalho dele o SCN corrente dessa 
ocasião, que pode ser rara, já que o RDBMS tenta gravar o mínimo possível nos 
datafiles e sempre lentamente, em background), no CONTROLFILE (indicando o SCN 
mais atual do sistema, digamos assim) e nos REDO LOG FILES (no formato LOW and 
HIGH, ie, um par indicando que aquele REDO LOG FILE tal possui logs que se 
referem à transações feitas desde o SCN x até o SCN y)... Mais tarde, quando o 
REDO LOG FILE é arquivado, ele ganha um SEQUENCE NUMBER, ie, um OUTRO número 
sequencial que serve para identificar unicamente aquele archive 
 
 ==> OU SEJA : em tese, é perfeitamente possível que uma transação T1 comece e 
ganhe um SCN 1000 (e portanto teu REDO LOG FILE atual L1 tenha como LOW SCN 
1000), aí SEM encerrar essa transação outras transações T2, T3, etc, comecem e 
passem a gerar montes de redo, que vão encher o logfile L1, depois o L2, depois 
o L3, etc, etc , que vão ser arquivados e gerar os archives com sequências  
(digamos) 5, 50001, 50002, etc, E ao mesmo tempo o SCN corrente vai 
avançando no controlfile e para fins didáticos suponha que os datafiles não 
sejam atualizados nesse intervalo e portanto continuem com SCN abaixo de 
1000 Aí digamos que só então a nossa transação T1 volte a gerar redo no 
logfile atual L5 : como essa transação ** ainda ** tem como SCN 1000, 
necessariamente esse logfile vai ter 1000 como LOW SCN, e quando esse logfile 
for arquivado ele ganha digamos uma sequence de 50005, e que ela é comitada 
pouco depois...
 
 Neste cenário, se mais tarde vc tiver que recuperar e atualizar esse banco, 
justamente por causa dessa transação T1 que se "espalhou" por diferentes 
logfiles archivados em diferentes sequências vc vai precisar TANTO do archive 
com sequência 5 ** quanto **  do archive com sequência  50005 Esse tipo 
de coisa  pode ** sim ** acontecer, e imho EXPLICAM adequadamente os casos em 
que vc é solicitado a localizar archives com sequences muito distantes entre 
si, em especial sequências muito "antigas" no tempo : normalmente as pessoas 
lembram que quando vc faz o backup o RMAN força um checkpoint (atualizando o 
SCN nos datafiles, okdoc) mas  Não  encerra as transações porventura 
acontecendo 
 
 Assim, te respondendo : se vc pediu um RECOVER ** sem ** especificar o limite 
e ele tá pedindo por archives gerados ** depois ** do backup pra mim é isso, vc 
tinha alguma transação aberta no momento do HOT BACKUP (que tem esse nome 
Justamente porque o banco está ABERTO pra transações durante o backup) , que 
gerou  redo log em logfiles posteriores ao término do backup de banco

Finalmente : o fato de em um backup file/backup piece vc poder ter diferentes 
archives (cada um, óbvio, com diferentes sequences) sem uma ordenação definida, 
não tem problema algum - como foi dito, se os backup