miércoles, 15 de octubre de 2008

Recuperación de una base de datos en modo noarchivelog

1. Verificar la existencia de una copia de seguridad de base de datos
La copia de seguridad que se debe de tener para este tipo de recuperaciones se hace con la base de datos cerrada por lo tanto:
Paramos la base de datos:
SQL> shutdown inmediate;
SQL> exit

Copiamos los archivos de la base de datos para realizar la copia:
$ cp $BASE_DE_DATOS $BACKUP_BASE_DE_DATOS
Siendo $BASE_DE_DATOS, la ubicación de los archivos de base de datos y
$BACKUP_BASE_DE_DATOS, la ubicación del backup de base de datos
Nos conectamos a la base de datos y la volvemos a levantar:
$ sqlplus /nolog
SQL> connect /as sysdba
SQL> startup

2. Recuperar base de datos modo noarhivelog
Teniendo un backup correcto de la base de datos, la recuperación requiere los siguientes pasos:
Nos conectamos a la base de datos y tiramos la instancia:
$ sqlplus /nolog
SQL> connect /as sysdba
SQL> shutdown abort
Copiamos nuestro backup a la ubicación de los archivos de base de datos:
SQL> !cp -r $BACKUP_BASE_DE_DATOS $BASE_DE_DATOS
Iniciamos la instancia y montamos la base de datos:
SQL> connect /as sysdba
SQL> startup

3. Notas finales
!!Se ha llevado a cabo una recuperación de base de datos. Las cosas que hay que tener en cuenta es que si el backup que teníamos era de las 9 de la mañana y el error se produjo a las 3 de la tarde, las operaciones realizadas en ese tiempo al realizar la restauración de la base de datos se pierden.!!

No hay comentarios: