- Este tópico contém 13 respostas, 4 vozes e foi atualizado pela última vez 16 anos, 1 mês atrás por
jspaulonci.
-
AutorPosts
-
10 de fevereiro de 2010 às 5:26 pm #92553
jspaulonci
ParticipanteBom dia pessoal, dúvida referente ao RMAN
Quero simular a perda de uma tablespace acidentalmente
O meu catalogo é o control fileEu fiz um backup full com o rman com o comando abaixo:
backup as compressed backupset full database plus archivelog delete input;Depois entrei no banco e dropei a tablespace TBSD_ESPACO, em seguida voltei para o RMAN e tentei voltar a tablespace TBSD_ESPACO, mas ele dá erro dizendo que a tablespace não existe mais no catalogo.
RMAN> recover tablespace tbsd_espaco;
Starting recover at 10-FEB-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 recover command at 02/10/2010 11:13:27
RMAN-20202: Tablespace not found in the recovery catalog
RMAN-06019: could not translate tablespace name “TBSD_ESPACO”Quando dou o comando list backup no arquivo 6 (que era o arquivo da tablespace em questão, aparece vaziu)
File LV Type Ckp SCN Ckp Time Name
—- — —- ———- ——— —-
1 Full 1037683 10-FEB-10 +DADOS/dbbackup/datafile/system.311.710498831
5 Full 1037683 10-FEB-10 +DADOS/dbbackup/datafile/tbsd_coleta.319.710506805
6 Full 1037683 10-FEB-10Quando eu fiz o drop tablespace pelo banco o Oracle tirou do catalogo o arquivo 6 ?
Como faço pra fazer nesse cenário de perda de uma tablespace ?
Obrigado
Spaulonci10 de fevereiro de 2010 às 6:20 pm #92555Rodrigofs
ParticipanteBom dia, Acho que o você confundiu o comando jspaulonci
tente:
restore tablespace tbsd_espaco;
Ou se quiser pode pedir o RMAN para simular um restore, sem fazer o restore:
restore tablespace tbsd_espaco preview;
E veja se ele tem realmente no catalog um backup disponivel para restore.
Abraços,
Rodrigo Santana.10 de fevereiro de 2010 às 6:37 pm #92557Regis Araujo
ParticipanteSalve..!!
Concordo com o Rodrigo.. o comando recovery é para recuperar algo que esta corrompido mas que exista dentro do banco.. para restaurar uma tablespace que não mais existe.. tem q ser restore… e ai sim.. depois vc da o recovery.. tipo.
restore tablespace tbsd_espaco;
recover tablespace tbsd_espaco;
Abraços..!
10 de fevereiro de 2010 às 6:42 pm #92559Ricardo Portilho Proni
ParticipanteOi.
Você tem que restaurar o banco até um ponto no tempo em que a Tablespace exista.
Em um RESTORE simples, ele tenta restaurar o banco de dados até o presente, mas no presente esta tablespace não existe.RECOVER DATABASE UNTIL TIME ‘2008-03-25 08:47:00’;
ALTER DATABASE OPEN RESETLOGS;Atenção pois você iá perder todas as alterações feitas desde a remoção da Tablespace até a execução do RECOVER.
Abraço !
10 de fevereiro de 2010 às 6:45 pm #92561jspaulonci
ParticipanteRicardo, quer dizer que eu não consigo deixar o banco aberto fazer um restore da tablespace ?
10 de fevereiro de 2010 às 6:59 pm #92562Ricardo Portilho Proni
ParticipantePode sim, dependendo de sua versão. No 10g pode.
você poderá fazer um TABLESPACE POINT IN TIME RECOVERY.Basicamente é isto:
RMAN> RECOVER TABLESPACE users, tools UNTIL LOGSEQ 1300 THREAD 1;Segue a página da documentação mais detalhada:
http://download-east.oracle.com/docs/cd … mtspit.htm10 de fevereiro de 2010 às 7:02 pm #92563jspaulonci
ParticipanteEntaum Ricardo, estou usando 11.1.0.7
No meu caso foi o seguinte, eu dropei a tablespace acidentalmente, quero manter o banco aberto e fazer o restore/recover somente dessa tablespace , você me sugeriu o recover com until sequence, não precisarei do restore também ?
Abraços
10 de fevereiro de 2010 às 7:39 pm #92565Ricardo Portilho Proni
ParticipanteSó o RECOVER, mas te sugiro ler antes esta página do manual do 11g:
http://download.oracle.com/docs/cd/B283 … m#i1035361Abraço !
10 de fevereiro de 2010 às 7:42 pm #92566jspaulonci
ParticipanteNão funcionou não Ricardo, quando eu dou o drop tablespace xxxxx including contents and datafiles, o Oracle vai no meu controlfile, atualiza o cabeçalho dizendo que a tablespace xxxx não existe mais, (querendo ou não o comando foi executado com sucesso,pois o erro foi humano e não um desastre) aí o RMAN desconsidera o arquivo, ele fica com status de obsoleto, penso eu.
Mas vou ler o link que vc me enviou
Spaulonci
11 de fevereiro de 2010 às 3:14 pm #92592Ricardo Portilho Proni
ParticipanteEu também preciso ler tudo e testar, pois só fiz TSPITR para outro servidor, para restaurar apenas a tablespace desejada de um banco muito grande. E era no 9i…
18 de fevereiro de 2010 às 3:08 pm #92663Ricardo Portilho Proni
ParticipanteOi.
Uu li a documentação e me lembrei que um dos requerimentos do TSPITR é que a TS não tenha sido apagada. Se a TS foi apagada, você tem que voltar o banco todo.
A alternativa é fazer TSPITR em outro servidor / instância.Abraço !
18 de fevereiro de 2010 às 3:45 pm #92665jspaulonci
ParticipanteGrande Portilho, faz sentido né ? muito obrigado
Spaulonci
22 de fevereiro de 2010 às 4:19 pm #92729Ricardo Portilho Proni
ParticipanteOi João Paulo.
Eu li no manual do 11g R2 que esta é uma New feature do R2, fazer TSPITR em uma TS excluída.
Abraço !
22 de fevereiro de 2010 às 4:58 pm #92730jspaulonci
ParticipanteValeu Garoto, muito obrigado.
Esse assunto é pertinente.
Abraços
Spaulonci
-
AutorPosts
- Você deve fazer login para responder a este tópico.