Come ripristinare rapidamente un database pulito utilizzando il punto di ripristino Oracle

摘要: Il nostro obiettivo è quello di fornire soluzioni capaci di semplificare l'IT offrendo soluzioni database, sviluppo personalizzato, data center dinamici, Flexible Computing.

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

症状

Applicabile a: 

Database Oracle - 11gR2


Problema: 


Spesso, durante l'esecuzione di prove di benchmarking, è necessario caricare un database pulito prima di iniziare una nuova esecuzione. Un modo per garantire un database pulito è quello di ricreare l'intero database prima di ciascuna esecuzione dei test, ma a seconda delle loro dimensioni questo approccio può far perdere molto tempo o essere inefficiente.


Soluzione: 


Questo articolo descrive come utilizzare la flashback di Oracle per ripristinare rapidamente un database a uno stato che esisteva poco prima di eseguire il carico di lavoro. Più specificamente, questo articolo descrive la procedura su come utilizzare i "punti di ripristino garantiti".


Punto di ripristino: 

Il punto di ripristino non è altro che un nome associato a un timestamp o a una SCN del database. È possibile creare un normale punto di ripristino o un punto di ripristino garantito. La differenza tra i due è che il punto di ripristino garantito consente di effettuare la flashback al punto di ripristino a prescindere del parametro di inizializzazione DB_FLASHBACK_RETENTION_TARGET, vale a dire che è sempre disponibile (supponendo di avere spazio sufficiente nell'area di recupero flash).

 
SLN310475_en_US__1icon NOTA: in questo articolo la registrazione Flashback non è attivata.

Punto di ripristino garantito:

Prerequisiti: la creazione di un punto di ripristino garantito richiede i seguenti prerequisiti:
  • L'utente deve disporre dei privilegi del sistema SYSDBA
  • Deve aver creato un'area di recupero flash
  • Il database deve essere in modalità ARCHIVELOG

Creazione di un punto di recupero garantito:

Dopo aver creato o migrato un nuovo database, per prima cosa è necessario creare un punto di ripristino garantito in modo da poter effettuare la flashback ogni volta prima di iniziare un nuovo carico di lavoro. La procedura è la seguente:
  1. $> su – oracle
  2. $> sqlplus / as sysdba;
  3. Verificare se ARCHIVELOG è abilitato
    SQL> da v$database;
    Se il passaggio 3 indica che ARCHIVELOG non è abilitato, procedere al passaggio 8 di seguito.
  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;
    dove CLEAN_DB è il nome assegnato al punto di ripristino garantito.
Visualizzazione del punto di ripristino garantito
SQL> select * from v$restore_point;

Verificare le informazioni sul punto di ripristino appena creato. Inoltre, annotare l'SCN# per riferimento, che definiremo "SCN# di riferimento".


Flasback al punto di recupero garantito

A questo punto, al fine di ripristinare il database al punto di ripristino garantito, procedere come segue:
  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;
Confrontare il SCN# del punto 9 di cui sopra con il riferimento SCN#.

 
SLN310475_en_US__1icon NOTA: l'SCN# del punto 9 di cui sopra potrebbe non necessariamente corrispondere in modo esatto all'SCN# di riferimento, ma sarà abbastanza vicino.

Riferimenti: 


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