Recovery In Oracle

Propaganda
Recovery In Oracle
TBD
Vladimir Luz
Recovery in Oracle
1
Introdução

Tipos de erros numa base de dados

Corrupções
Corrupção lógica
 Corrupção física


Erro humano


Erros acidentais ao configurar tabelas
Desastres
Terramotos, incêndios, tornados
 Falta de energia eléctrica por um período muito longo

Recovery in Oracle
2
Recuperação

Consiste em:



Restaurar a copia dos datafiles através de um backup
Reaplicar todas as alterações ao ficheiro desde o backup
Tipos de recuperação





Media recovery (datafile media recovery)
Crash recovery
Instance recovery
Incomplete recovery
Flashback database
Recovery in Oracle
3
Backup

Backup Físico
Consiste em copiar os ficheiros da base de dados
para outro sítio
 Podem ser criados usando o RMAN (Recovery
Manager) ou através do sistema operativo


Backup Lógico

Utiliza SQL para ler a base de dados e exportar para
um ficheiro binário.
Recovery in Oracle
4
Fases de Recuperação (1)

Todas as recuperações têm de passar por duas
fases:

Roll Foward
Aplica sequencialmente as alterações de blocos (redo
records) contidas nos redo log files
 Le os redo records e e obtém os blocos originais
 A tabela interna undo$ contem a informação das
transacções pendentes, até que o sejam encontrados os
redo recornd com info de commit
 Nessa altura essa informação é retirada da tabela

Recovery in Oracle
5
Fases de Recuperação (2)

Roll Backward
Depois do roll foward todas as transacções que não
fizeram commit têm de ser desfeitas
 É feito o rollback a todas as alterações que não fizeram
commit.

Recovery in Oracle
6
Media Recovery





É usado para recuperar datafiles, controlfiles ou
spfiles danificados ou perdidos.
Tem de ser o administrador a pedir
A base de dados tem de estar fechada
O datafile tem de estar offline
A recuperação começa sempre no ficheiro com
menor SCN (Sistem Change Number)
Recovery in Oracle
7
Crash Recovery (1)




É usado quando uma instância é iniciada depois
de um shutdown abort ou de um crash
Feito automaticamente
Cabe ao administrador tentar apenas perceber as
causas que da falha
Utiliza online redo logs para realizar a
recuperação dos datafiles envolvidos no crash
Recovery in Oracle
8
Crash Recovery (2)



São repetidas as transacções no online redo log
a partir da posição do checkpoit
O checkpoint encontra-se na posição onde a
última alteração foi guardada
São aplicadas as committed tansaction e as
uncommitted transactions
Recovery in Oracle
9
Instance Recovery



Acontece quando uma instância detecta a falha
de outra instância
Mecanismo idêntico ao do Crash Recovery
Não é restaurada a instância em falha nem
nenhuma aplicação que estava a correr nessa
instância
Recovery in Oracle
10
Incomplete Recovery



Acontece quando uma parte dos dados é perdida
mesmo após a recuperação
Acontece quando não se possui todos os items
necessários à recuperação
Por vezes é utilizada apenas para recuperar a
base de dados até um certo ponto através de um
backup
Recovery in Oracle
11
Flashback Database (1)




Utilizada em alternativa ao point-in-time
recovery
Usa um tipo de log diferente – Flashback
Database log
O servidor da base de dados escreve
periodicamente nos logs as imagens dos blocos
de dados
Essas imagens são utilizadas para recuperar
rapidamente as alterações na base de dados
Recovery in Oracle
12
Flashback Database (2)



Método mais rápido que o point-in-time
recovery
Reduz o tempo necessário à recuperação porque
não utiliza backups
O tempo da recuperação é proporcional ao
número de alterações e não ao tamanho da base
de dados
Recovery in Oracle
13
Referências










Lahiri, Tirthankar - Quick Fault Recovery in Oracle
Liu, Daniel T - Oracle 10g Backup and Recovery
books.elsevier.com/us/bookscat/samples/155558294x/155558294x.pdf
http://www.oracle.com/technology/deploy/availability/htdocs/std_recovery.html
http://www.csee.umbc.edu/help/oracle8/server.815/a67778/ch22_rec.htm#1431
http://www.adp-gmbh.ch/ora
http://www.adp-gmbh.ch/ora/concepts/redo_log.html
http://www.csee.umbc.edu/help/oracle8/server.815/a67778/ch22_rec.htm#655
http://www-rohan.sdsu.edu/doc/oracle/server803/A54640_01/ch4_rcvs.htm
http://www.sqlmagazine.com.br/Colunistas/RicardoRodney/06_RecoverNoOracle.
asp
Recovery in Oracle
14
Download