Как быстро восстановить чистую базу данных с помощью точки восстановления Oracle
Summary: Наша задача — предоставлять решения, которые упрощают ИТ-инфраструктуру. Для ее реализации мы создаем решения для баз данных, специализированные проекты, динамические центры обработки данных и гибкие вычислительные системы. ...
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
Применяется к:
База данных Oracle: 11gR2
Проблема:
Часто при проведении сравнительных тестов перед началом новой серии необходимо загрузить чистую базу данных. Один из способов получения чистой базы данных — воссоздание всей базы данных перед каждым запуском теста, но в зависимости от размера ИТ-инфраструктуры этот подход может быть очень трудоемким или неэффективным.
Решение.
В этой статье описано, как использовать функцию flashback Oracle для быстрого восстановления состояния базы данных, которое существовало перед рабочей нагрузкой. В частности, в этой статье описан порядок использования «гарантированных точек восстановления».
Точка восстановления
Точка восстановления — это только имя, связанное с меткой времени или SCN базы данных. Можно создать обычную или гарантированную точку восстановления. Разница между этими двумя заключается в том, что гарантированная точка восстановления позволяет вернуться к восстанавливаемому состоянию независимо от значения параметра инициализации DB_FLASHBACK_RETENTION_TARGET, т. е. она всегда доступна (если достаточно места в области быстрого восстановления).
ПРИМЕЧАНИЕ. В этой статье ведение журнала Flashback не было включено.
Гарантированная точка восстановления
Предварительные условия. Создание гарантированной точки восстановления требует соблюдения следующих предварительных условий:- пользователь должен иметь системные привилегии SYSDBA,
- необходимо создать область быстрого восстановления,
- база данных должна быть в режиме ARCHIVELOG.
Создание гарантированной точки восстановления
После создания или переноса свежей базы данных, прежде всего необходимо создать гарантированную точку восстановления, чтобы можно было вернуться к ней перед каждой новой рабочей нагрузкой. Порядок действий:- $> su – oracle
- $> sqlplus / as sysdba;
- Проверьте, включен ли ARCHIVELOG
SQL> select log_mode from v$database;
Если на шаге 3 указано, что ARCHIVELOG не включен, перейдите к шагу 8 ниже. - SQL> shutdown immediate;
- SQL> startup mount;
- SQL> alter database archivelog;
- SQL> alter database open;
- SQL> create restore point CLEAN_DB guarantee flashback database;
где CLEAN_DB — имя, заданное для гарантированной точки восстановления.
SQL> select * from v$restore_point;
Проверьте информацию о созданной точке восстановления. Также запишите номер SCN для справки. Мы будем называть его «справочный номер SCN»
Возврат к гарантированной точке восстановления
Теперь, чтобы вернуть базу данных к гарантированной точке восстановления, выполните следующие действия:
- $> 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;
ПРИМЕЧАНИЕ. Номер SCN, начиная с шага 9 выше, может не полностью совпадать со справочным номером SCN, но он будет достаточно похож.
Справочные материалы:
Article Properties
Article Number: 000146492
Article Type: Solution
Last Modified: 21 Feb 2021
Version: 3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.