29 maggio 2007

RMAN rollforward standby

Forse ne sono uscito. Per colpa di qualche script scritto male si sono persi dei redo log archiviati dal database RAC in produzione, quindi lo standby database non poteva più andare avanti.
Il concetto è questo: si usa RMAN per fare il rollforward dei blocchi dei datafile dello standby, che essendo fisico sono uguali a quelli originali.
Per fare ciò bisogna procurarsi un backup incrementale per lo standby:

SQL> SELECT CURRENT_SCN FROM V$DATABASE;

RMAN> BACKUP INCREMENTAL FROM SCN <scn dello stdby> DATABASE FORMAT '/tmp/ForStandby_%U' tag 'FOR STANDBY';

Portare poi i file prodotti al cospetto dello standby, portandoli a conoscenza del suo RMAN:

RMAN> CATALOG START WITH '/tmp/ForStandby_';

Io ho utilizzato un catalogo sul db principale e il control file sullo standby per evitare problemi: i due db hanno lo stesso ID!
Ora gli diciamo di fare il recover senza redo!:

RMAN> RECOVER DATABASE NOREDO;

Ora il database dovrebbe essere pronto:

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;

Peccato che, nel mio caso, il control file dello standby è rimasto all'SCN originale, quindi ho dovuto ricrearlo con uno snapshot di RMAN sul principale:

SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '...';

Portiamo il control file appena creato sullo standby e facciamo partire l'ultimo recover; dovrebbe funzionare.

22 maggio 2007

ASM su... USB!

Oggi, durante la lezione al corso Oracle di amministrazione RAC 10gR2, improvvisamente il docente tira fuori due strani oggetti blu, con due fili che uscivano da un'estremità. Dopo un paio di secondi di silenzio interrogativo, si sono rivelati una coppia di hub USB passivi con 8 "chiavette" USB. Stavamo parlando di ASM e quindi alcuni hanno capito al volo: le 8 chiavette sono state utilizzate per simulare 8 dischi reali!
Un'idea fantastica e spettacolare: mi immagino gli 8 led che lampeggiano in modo psichedelico durante l'utilizzo con ASM! Deve essere anche molto istruttivo e fa capire molto chiaramente come funziona ASM e un volume manager generico, volendo.
Complimenti al docente! Un grande (d'altronde è laureato in fisica come me :-)

19 maggio 2007

DBA Oracle a tempo pieno

Il silenzio relativo degli ultimi mesi ha una spiegazione: da lunedì scorso ho cominciato a lavorare come DBA Oracle/system engineer per un'azienda di Milano.
Per me è un grande cambiamento, ma ho trovato un ambiente molto professionale e colleghi molto preparati; tutto ciò è per me di grande aiuto.
Ora ho a che vedere con tecnologie che ho utilizzato solo per esperimenti personali: Real Application Clusters e Standby database. Tutto veramente intrigante ;-)
Proprio ieri ho recuperato un database in standby che non voleva saperne di ripartire per un danno al tablespace di system (grande scelta per un file corrotto...). Ho fatto un recover di 2 ore e 40 minuti e poi il db è tornato all'antico splendore.
Beh, per la prima settimana è una piccola grande soddisfazione.
Cercherò di essere più presente con il blog; dovrei avere anche molto materiale sotto mano per nuove idee ;-)

Per tutta la prossima settimana sarò a un corso nella sede Oracle a Sesto S. Giovanni. Chi fosse da quelle parti mi può avvertire con una mail.