Sei sulla pagina 1di 5

Observaciones:

Dependiendo del tamao del tablespace UNDO y de la cantidad de transacciones


que realicemos en la base de datos podremos recuperar mas o menos informacin
a lo largo del tiempo.
El flashback query y el flashback table estn pensados para recuperar los datos a
un momento anterior si los datos no estn disponibles en el tablespace UNDO
recibiremos un error y no podremos recuperar la informacin.
El flashback database esta pensado solo para cuando alguien reali!a un proceso
que no se pueda recuperar con el flashback query o el flashback table e"emplo
borrar un esquema completo o un proceso de borrado de facturas en el que el
usuario se ol#ida de informar los campos desde$hasta factura % y las borra todas & .
'equiere parar la base de datos abrir la base de datos en modo mount y
recuperar a una hora antes o a () minutos antes. El flashback database requiere
acti#ar la base de datos para flashback definir un directorio para almacenar los
flashback archi#e logs e implementar pol*ticas de borrado de los logs #*a rman.
+ara los programadores con las opciones flashback ,uery y flashback -able hay
suficiente. El flashback database es una tarea de dba.
+ara mas informacin ad"unto .OO/.+D0 consultar cap*tulos 12 y 13
ORACLE FLASHBACK ( Query , Table y
Daabase !
4onfiguracin del tablespace UNDO
5,67 58O9 +:':;E-E' UNDO
N:;E -<+E =:6UE
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
undo>management string :U-O
undo>retention integer (?3?? undo retention in seconds
undo>tablespace string UNDO-.5(
"! Flas#bac$ Query co%%an&
0uncionan desde Oracle@i
Utili!an el -:.6E5+:4E UNDO para reconstruir los datos a una fecha
determinada.
Ejemplos :
Select * from clientes as of timestamp ( sysdate-5/1440 ) /* 1 dia
tiene 24*601440 min!tos */ S"S#$%E-5 min!tos
Select * from clientes as of timestamp ( sysdate-1 )
Select * from clientes as of scn (&455666) /* m!estra las filas de
la ta'la en el momento de tiempo del scn
Select * from $(%)*+,-S $S -. %)/ES%$/0 to1timestamp(221-3+4-05
16:01:00272##-/-4-"" 824:/):SS2)
98E(E *-#):-1artic!lo2201&-2-2
SC' ( Syse% C#an)e 'u%ber
Oracle internamente utili!a 54N no el system -A;E5-:;+ para
almacenar los datos de flashback .
6a tabla 5<5.5;ON>54N>-A;E tiene la equi#alencia entre
5<5-E;-A;E5-:;+ y el 54N correspondiente
5e almacena un registro cada ) minutos aproBimadamente
5e almacenan un total de (CC? registros en esta tabla
4uando accedemos #*a :5 O0 -A;E5-:;+ #a a buscar a esta
tabla el 54N que mas se parece a ese -A;E5-:;+
select * from S"S;S/-41S*41%)/E /* <=) m!estra 1440 re>istros con
%)/ES%$/0-S*4 ES0$*)$#-S cada 5 min!tos -SE$ 5 #)$S
select ora1ro?scn 7 scn1to1timestamp(ora1ro?scn) 7 a;*
from clientes a
order 'y ora1ro?scn desc /* 10: m!estra cada fila con el @ltimo
scn y el timestamp correspondiente al @ltimo cam'io

select codi>o1rapido 7 nom're 7
Aersions1startscn 7 Aersions1starttime 7 Aersions1endscn 7
Aersions1endtime 7
Aersions1Bid 7 Aersions1operation
from clientes
Aersions 'et?een timestamp to1timestamp(226-3+4-05 21:&5:00272##-
/-4-"" 8824:/):SS2)
and sysdate
--to_timestamp('28-JUN-07 21:44:01','DD-
MON-YY HH24:MI:SS'
?Cere codi>o1rapido 20665&52 /* 10: m!estra todas las
Aersiones de la select entre los 2 periodos

select * from flasC'acD1transaction1E!ery
?Cere lo>on1!ser not in (2S"S272S"S/$42)
order 'y start1timestamp /* 10: m!estra informaciFn de la
transacciFn asG como la instr!cciFn SH, para desCacer
*! Flas#bac$ able co%%an& ("+,!
Utiliza el tablespace UNDO para recuperar la informacin.
El recyclebin ( papelera de reciclaje ) esta disponible a partir de 10
!las"bac# table esta disponible a partir de 10
$ermite recuperar una tabla dropada % recuperar una tabla a un tiempo anterior
drop ta'le clientes cascade constraints

select * from recycle'in

select * from !ser1recycle'in
select * from d'a1recycle'in
select * from IJ)4K/221J/$a5m&>H:S$yHpp-?K0I

flasC'acD ta'le clientes to 'efore drop

flasC'acD ta'le clientes to 'efore drop rename to pp&&

p!r>e recycle'in

alter ta'le clientes ena'le ro? moAementL
flasC'acD ta'le clientes to timestamp ( sysdate-5/1440)
-! Flas#bac$ &aabase co%%an& ("+,!
!&'()*'+, D'-'*'(E
$ermite recuperar una base de datos "acia atr.s en el tiempo sin tener /ue
restaurar arc"i0os de bac#up.
$ara restaurar la base de datos debe de estar en modo mount
(ir0e para cuando al1uien sin /uerer se car1a un es/uema completo o lanza un
proceso /ue to/ue muc"as tablas y sea de dif2cil recuperacin manual.
Necesita un directorio para depositar los flas"bac# arc"i0e redo lo1s
Utiliza los flas"bac# arc"i0e redolo1s almacenados en la flas" reco0ery area.
!las"bac# table y !las"bac# /uery tiran del tablespace UNDO % !las"bac#
database tira de los flas"bac# arc"i0e redo lo1s.
Necesita /ue la base de datos ten1a acti0ada la opcin flas"bac#3on
$recisa una estrate1ia de bac#up con rman para borrar esos flas"bac#
arc"i0elo1s
(i se supera el espacio asi1nado a la reco0ery area 4db3reco0ery3file3dest3size4
se para la base de datos "asta
/ue el dba libere espacio o ampl2e el par.metro 4db3reco0ery3file3dest3size4
select * from AKflasC'acD1data'ase1lo>
select c!rrent1scn 7 flasC'acD1on from AKdata'ase
---------- pa!amet!os
d'1flasC'acD1retention1tar>et 1440 -- Ma"im#m $%as&'a()
Data'ase %o* !ete+tio+ time i+ mi+#tes,
d'1recoAery1file1dest1siMe 10: -- -ata'ase !e(o.e!/
0i%es si1e%imit
d'1recoAery1file1dest
*:NoracleNprod!ctN10;2;0/flasC1recoAery1area -- -ata'ase !e(o.e!/
0i%e %o(atio+
---------- a(ti.a! 0%as&'a() -ata'ase
start!p mo!nt eBcl!siAeL
alter data'ase arcCiAelo>L
alter data'ase flasC'acD onL
alter data'ase openL
---------- -esa(ti.a! 0%as&'a() -ata'ase
start!p mo!nt eBcl!siAeL
alter data'ase flasC'acD offL
alter data'ase openL
---------- !esta#!a! 'ase -e -atos a #+ tiempo
sC!tdo?nL
start!p mo!nt eBcl!siAeL
flasC'acD data'ase to timestamp sysdate-1/24L
alter data'ase open resetlo>sL
---------- (#a+-o se s#pe!a e% .a%o! -e
2d'1recoAery1file1dest1siMeO %a 'ase -e -atos se -etie+e
Opcin ( &
.orrar con un comando del sistema operati#o los flashback archi#e logs
rman
connect target D
crosscheck archi#elog allE
delete eBpired archi#elog allE
eBitE
Opcin 1 &
rman
connect target D
delete archi#elog all
eBitE
Opcin F &
:lter system set d'1recoAery1file1dest1siMe 50: scope 'otCL
:+UN-E5
EN 6ANUG +:': 6A;+A:' 6O5 .:4/U+ ';:N < :'48A=E 'EDO 6OH5
loginI oracle

eBport N65>6:NHJ:;E'A4:N>:;E'A4:.9E3A5O33)@+()

KO':46E>8O;EDbinDrman target sysDsys nocatalog

';:N7 delete backup of databaseE
';:N7 delete backup of archi#elog allE
';:N7 delete archi#elog allE
';:N7 delete backup of controlfileE
';:N7 delete backup of spfileE
';:N7 eBitE
;onitori!ar tablespace UNDO
select * from AK!ndostat

Potrebbero piacerti anche