Jak szybko przywrócić czystą bazę danych przy użyciu punktu przywracania Oracle
摘要: Naszą misją jest dostarczenie rozwiązań, które ułatwiają obsługę technologii IT, zapewniając rozwiązania baz danych, rozwiązania niestandardowe, rozwiązania dynamicznych centrów danych i elastyczne rozwiązania informatyczne. ...
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
Dotyczy:
Baza danych Oracle – 11gR2
Problem:
Często podczas prowadzenia testów porównawczych konieczne jest załadowanie czystej bazy danych przed rozpoczęciem nowej tury testów. Jednym ze sposobów zapewnienia czystej bazy danych jest odtworzenie całej bazy danych przed każdym testem, ale w zależności od wielkości, to podejście może być bardzo czasochłonne i nieefektywne.
Rozwiązanie:
Poniższy artykuł zawiera opis użycia funkcji flashback bazy danych Oracle do szybkiego przywrócenia bazy danych do stanu tuż przed uruchomieniem obciążenia. Dokładniej, w artykule opisano kroki używania „gwarantowanych punktów przywracania”.
Punkt przywracania:
Punkt przywracania to nic innego jak nazwa powiązana z punktem w czasie lub SCN bazy danych. Można utworzyć normalny punkt przywracania lub gwarantowany punkt przywracania. Różnica między tymi dwoma polega na tym, że gwarantowany punkt przywracania pozwala powrócić do danego punktu bez względu na parametr inicjalizacji DB_FLASHBACK_RETENTION_TARGET, tzn., że jest on zawsze dostępny (zakładając, że w obszarze przywracania flash jest odpowiednia ilość miejsca).
UWAGA: w niniejszym artykule nie jest WŁĄCZONE logowanie Flashback.
Gwarantowany punkt przywracania:
Warunki wstępne: utworzenie gwarantowanego punktu przywracania wymaga spełnienia następujących warunków:- Użytkownik musi mieć uprawnienia systemu SYSDBA
- Musi zostać utworzony obszar odzyskiwania flash
- Bazy danych musi być w trybie ARCHIVELOG
Tworzenie gwarantowanego punktu przywracania:
Po utworzeniu lub przeniesieniu nowej bazy, najpierw należy utworzyć gwarantowany punkt przywracania tak, aby móc powrócić do niego przed każdym uruchomieniem nowego obciążenia. Kroki są następujące:- $> su – oracle
- $> sqlplus / as sysdba;
- Sprawdź, czy włączono ARCHIVELOG
SQL> select log_mode from v$database;
Jeśli krok 3 pokazuje, że ARCHIVELOG nie jest włączony, kontynuuj (w przeciwnym razie, przejdź do kroku 8 poniżej). - SQL> shutdown immediate;
- SQL> startup mount;
- SQL> alter database archivelog;
- SQL> alter database open;
- SQL> create restore point CLEAN_DB guarantee flashback database;
gdzie CLEAN_DB to nazwa nadana gwarantowanemu punktowi przywracania.
SQL> select * from v$restore_point;
Sprawdź informacje o nowo utworzonym punkcie przywracania. Zapisz też numer SCN, tutaj będziemy go nazywać „referencyjnym numerem SCN”
Powrót do gwarantowanego punktu przywracania
Teraz, w celu przywrócenia bazy danych do gwarantowanego punktu przywracania, wykonaj następujące czynności:
- $> 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;
UWAGA: numer SCN w kroku 9 powyżej nie musi być dokładnie taki sam jak referencyjny numer SCN, lecz będzie wystarczająco blisko.
Referencje:
文章属性
文章编号: 000146492
文章类型: Solution
上次修改时间: 21 2月 2021
版本: 3
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。