Cómo restaurar rápidamente a una base de datos limpia mediante el punto de restauración de Oracle

摘要: Nuestro objetivo es ofrecer soluciones que simplifiquen la TI mediante soluciones de bases de datos, desarrollo personalizado, centros de datos dinámicos y computación flexible.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Se aplica a: 

Base de datos de Oracle: 11gR2


Problema: 


A menudo, mientras se llevan a cabo pruebas, es necesario cargar una base de datos limpia antes de iniciar una nueva ejecución. Una manera para garantizar una base de datos limpia es volver a crear la base de datos completa antes de cada prueba. No obstante, según del tamaño de la base de datos, este enfoque puede demorar mucho tiempo o ser ineficiente.


Solución: 


En este artículo, se describe cómo utilizar la función flashback de Oracle para restaurar de forma rápida una base de datos a un estado previo a la ejecución de la carga de trabajo. Más concretamente, en este artículo se describen los pasos para usar los “puntos de restauración garantizados”.


Punto de restauración: 

El punto de restauración no es más que un nombre asociado con una fecha y hora o un SCN de la base de datos. Se puede crear un punto de restauración normal o un punto de restauración garantizado. La diferencia entre los dos es que el punto de restauración garantizado permite realizar el flashback al punto de restauración independiente del parámetro de inicialización DB_FLASHBACK_RETENTION_TARGET, es decir, siempre está disponible (suponiendo que tiene suficiente espacio en el área de recuperación flash).

 
SLN310475_en_US__1icon NOTA: En este artículo, el registro de flashback no estaba activado.

Punto de restauración garantizado:

Requisitos previos: para crear un punto de restauración garantizado se requieren los siguientes prerrequisitos:
  • El usuario debe tener los privilegios del sistema SYSDBA
  • Debe haber creado un área de recuperación flash
  • La base de datos debe estar en modo ARCHIVELOG

Crear un punto de restauración garantizado:

Una vez que haya creado o migrado una nueva base de datos, lo primero que debe hacer es crear un punto de restauración garantizado para poder hacer un flashback a él todas las veces antes de iniciar una nueva carga de trabajo. Estos son los pasos que debe seguir:
  1. $> su – oracle
  2. $> sqlplus / as sysdba;
  3. Averigüe si ARCHIVELOG está habilitado
    SQL> select log_mode from v$database;
    Si el paso 3 muestra que ARCHIVELOG no está habilitado, continúe; de lo contrario, vaya al paso 8 que aparece a continuación.
  4. SQL> shutdown immediate;
  5. SQL> startup mount;
  6. SQL> alter database archivelog;
  7. SQL> alter database open;
  8. SQL> create restore point CLEAN_DB guarantee flashback database;
    aquí, CLEAN_DB es el nombre dado al punto de restauración garantizado.
Visualización del punto de restauración garantizado
SQL> select * from v$restore_point;

Verifique la información sobre el punto de restauración recién creado. Además, anote el SCN# como referencia y nos referiremos a él como “SCN# de referencia”


Flashback al punto de restauración garantizado

Ahora, para poder restaurar la base de datos al punto de restauración garantizado, siga los pasos a continuación:
  1. $> su – oracle
  2. $> sqlplus / as sysdba;
  3. SQL> select current_scn from v$database;
  4. SQL> shutdown immediate;
  5. SQL> startup mount;
  6. SQL> select * from v$restore_point;
  7. SQL> flashback database to restore point CLEAN_DB;
  8. SQL> alter database open resetlogs;
  9. SQL> select current_scn from v$database;
Compare el SCN# del paso 9 anterior con el SCN# de referencia.

 
SLN310475_en_US__1icon NOTA: Es posible que el SCN# del paso 9 anterior no sea necesariamente el mismo SCN# que el SCN# de referencia, pero será muy parecido.

Referencias: 


文章属性
文章编号: 000146492
文章类型: Solution
上次修改时间: 21 2月 2021
版本:  3
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。