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).
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:- $> su – oracle
- $> sqlplus / as sysdba;
- 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. - SQL> shutdown immediate;
- SQL> startup mount;
- SQL> alter database archivelog;
- SQL> alter database open;
- SQL> create restore point CLEAN_DB guarantee flashback database;
aquí, CLEAN_DB es el nombre dado al 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:
- $> su – oracle
- $> sqlplus / as sysdba;
- SQL> select current_scn from v$database;
- SQL> shutdown immediate;
- SQL> startup mount;
- SQL> select * from v$restore_point;
- SQL> flashback database to restore point CLEAN_DB;
- SQL> alter database open resetlogs;
- SQL> select current_scn from v$database;
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
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。