Bom Dia Ederson, Muito obrigado pelas dicas. Irei simular um backup com o RMAN.
E sobre o problema que estava tendo, consegui resolver, o backup estava com problemas, restaurei de um dia anterior e consegui da forma rustica a restauração do banco. Obrigado a todos, Ednilson De: [email protected] [mailto:[email protected]] Em nome de ederson2001br Enviada em: quinta-feira, 5 de dezembro de 2013 15:10 Para: [email protected] Assunto: RES: [oracle_br] Re: ORA-01195: online backup of file Blz Edinilson, vamos lá então. Vou direto ao ponto: é apenas um pontapé inicial prá vc. Não considere como roteiro de trabalho, pois em uma pesquisa rápida no Google e vc terá quilos de material. Primeiro, para agendar no crontab (exemplo da minha base de testes): oracle@hom> crontab -e # ---------------------------------------------------------- # Agendamento de backup RMAN do servidor de testes # 28/03/2012 - Ederson Elias # ---------------------------------------------------------- # # Backup diario noturno (20h de segunda a sabado) - Base HOM 00 20 * * 1-6 /home/oracle/bkp02_rman.sh # # Backup semanal, remove backup obsoletos (10h de domingo) - Base HOM 00 10 * * 7 su /home/oracle/bkp03_rman.sh --> Abaixo, segue o arquivo dos scripts --Coloque o SID do seu banco no local indicado por ?????? #!/bin/bash # bkp03_rman.sh ############################################################ # # Backup semanal no domingo, remove backups obsoletos # ############################################################################ ORACLE_SID=?????? ORACLE_HOME=/opt/oracle10gR2/product/10.2/db_1 PATH=/opt/oracle10gR2/product/10.2/db_1/bin rman target=/ log=/home/oracle/bkp03_rman.log << EOF RUN { BACKUP AS COMPRESSED BACKUPSET incremental level 0 DATABASE PLUS ARCHIVELOG delete all input; delete noprompt obsolete; } EXIT; EOF --Coloque o SID do seu banco no local indicado por ?????? #!/bin/bash # bkp02_rman.sh ############################################################ # # Backup diario incremental, sem remocao de backupsets ou archives. # # Obs: devido ao OPTIMIZATION ligado e a politica REDUNDANCY 1, os arquivos # copiados em um dia, nao sao copiados novamente nos proximos dias da semana # -- PODE AGENDAR PARA RODAR MAIS DE UMA VEZ POR DIA # POIS INTERFERE POUCO NO USO NORMAL DO BANCO ############################################################################ ORACLE_SID=?????? ORACLE_HOME=/opt/oracle10gR2/product/10.2/db_1 PATH=/opt/oracle10gR2/product/10.2/db_1/bin rman target=/ log=/home/oracle/bkp02_rman.log << EOF RUN { BACKUP incremental level 1 DATABASE PLUS ARCHIVELOG; } EXIT; EOF --> Chamar o RMAN pela linha de comando: oracle@hom> export ORACLE_SID=informe_o_sid oracle@hom> rman target=/ --> configurar o RMAN: --> no caso, /backup/local é um HD/área exclusivo para backup -- serão mantidas duas cópias de cada datafile RMAN> CONFIGURE RETENTION POLICY TO REDUNDANCY 2; -- com a otimização ligada, os archives serão gravados somente uma vez. No caso do backup incremental, -- com limpeza somente uma vez na semana, isto evita copiar o arquivo sem necessidade RMAN> CONFIGURE BACKUP OPTIMIZATION ON; -- faz a cópia do controlfile após o fim do backup, um arquivo com esta máscara: c-dbid_do_banco-YYYYMMDD-00 RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON; RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup/local/%F'; -- se o seu banco é Enterprise, o recurso de paralelismo agiliza bastante, mude para 2 ou 3 abaixo RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO COMPRESSED BACKUPSET; -- gravar o backup no local indicado, quebrando em arquivos de 4G cada, exemplo: --kfoqdmhe_1_1 --kfoqdmhe_2_1 --kfoqdmhe_3_1 --kfoqdmhe_4_1 --kfoqdmhe_5_1 --kfoqdmhe_6_1 --kfoqdmhe_7_1 --kfoqdmhe_8_1 --kfoqdmhe_9_1 --kfoqdmhe_10_1 RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/backup/local/%U' MAXPIECESIZE 4 G; --> ver as outras configurações: oracle@hom> show all; --> Ponto importante: O Rman não faz cópia de: Arquivos init.ora Arquivos de redo logs Arquivos executáveis/binários do Oracle Arquivos de senhas (pw????.ora) --> Links recomendados (mestre Eduardo Legatti) http://eduardolegatti.blogspot.com.br/2010/10/estrategia-de-backup-rman.html http://eduardolegatti.blogspot.com.br/2012/07/rman-backup-incremental-cumula tivo-vs.html http://eduardolegatti.blogspot.com.br/2012/01/restaurando-e-recuperando-um-b anco-de.html --> Links recomendados (mestre Fabio Prado) http://www.fabioprado.net/2011/03/serie-rman-parte-1-entendendo-o-rman.html http://www.fabioprado.net/2011/04/recuperando-dados-com-o-rman-utilizando.ht ml --> Links recomendados (mestre Rodrigo Almeida) http://www.rodrigoalmeida.net/blog/uma-visao-geral-sobre-backup-recover/ http://www.rodrigoalmeida.net/blog/apresentacao-enpo-rman-vilao-ou-heroi/ --> Links recomendados (mestre Ricardo Portilho) http://nervinformatica.ddns.com.br:8080/blog/?p=3263 (quem disse que o RMAN não tem interface gráfica?) Prá começar, assim vc já faz o backup. ########################################################## Para o RESTORE, fase 2, basicamente precisa identificar: -Vc tem backup? consistente/completo? -O que vc perdeu? identificar precisamente o que será restaurado -No servidor a restaurar backup já tem banco rodando ou será clone? -Em caso de novo server, identificar a compatibilidade entre a origem e destino do backup (versão do SO e versão do Oracle/Rman, charset) --Basicamente, um restore FULL é assim: oracle@hom> cd $ORACLE_HOME/dbs oracle@hom> export NLS_LANG=.UTF8 oracle@hom> export ORACLE_SID=HOM oracle@hom> rman target=/ RMAN> set dbid 822974043 --> no caso de nova base, um clone RMAN> startup pfile='/opt/oracle/product/10.2/db_1/dbs/pfilehom.ora' nomount force; RMAN> set controlfile autobackup format for device type disk to '/backup/hom/%F'; RMAN> RESTORE CONTROLFILE TO '/opt/oracle/product/10.2/db_1/dbs/control_hom_01.ora' FROM AUTOBACKUP db_name='hom'; RMAN> startup pfile='/opt/oracle/product/10.2/db_1/dbs/pfilehom.ora' mount force; RMAN> catalog start with '/backup/hom'; --Recover do backup RMAN> crosscheck archivelog all; RMAN> crosscheck backup; RMAN> crosscheck backup of database; RMAN> delete expired archivelog all; RMAN> delete expired backup; RMAN> delete obsolete; RMAN> list backup of archivelog all; --> para informar SEQUENCE e TREAD no comando de recover mais abaixo RMAN> shutdown; RMAN> startup pfile='/opt/oracle/product/10.2/db_1/dbs/pfilehom.ora' mount ; RMAN> run { set until sequence 155230 thread 1; restore database; switch datafile all; recover database; alter database open resetlogs; } []'s Ederson Elias DBA Oracle http://br.linkedin.com/pub/ederson-elias/24/8b/8b0 ------------ Labor improbus omnia vincit --- Em [email protected], "Ednilson Silva" <ednilson.silva@...> escreveu > > Ederson, > > Já que se ofereceu, eu aceito sim uma ajuda com RMAN, pelo menos algo para > iniciar. > > Comecei uma pesquisa para começar a implementar o RMAN, mas sempre surge > algo para ontem. > > > > Grato, > > > > Ednilson
