Oracle10g: Manual standby database (plantejament inicial)

Una base de dades Oracle en Standby és una còpia exacta d'una base de dades operativa en un servidor remot, usada com a backup, com a còpia per a consulta, recuperació de desastres, etc.

Una base de dades en mode Standby és més que un backup normal ja que es pot posar en producció en cas de desastre en un temps menor que si haguessim de restaurar una còpia (ja sigui des de rman o un simple exportació). Restaurar una còpia des de fitxer triga temps, i durant aquest període el sistema no està disponible. Amb una base de dades addicional en mode standby no hi ha res (o gairebé res de restaurar) en cas de desastre. En qüestió de minuts es fa el canvi permetent continuïtat en el servei.No ens ofereix els avantatges de rendiment d'un cluster o la seguretat del mirall però la relació de costos de temps i llicència versus avantatges em sembla correcta.

Des d'un punt de vista global:

-Disposem d'una còpia de la base de dades de forma remota, que podem comptabilitzar com a segon joc de còpies.

-A diferència d'un simple backup, la còpia es manté viva i les dades són actualitzats amb més freqüència.

-En cas de desastre la podem fer servir en qüestió de minuts sense esperar a restaurar un backup sencer, ja sigui lògic (exportació) o físic (rman).

-Serveix com a entorn de proves més real per a la prova de pegats i estimació de temps. El volum de dades és idèntic.

-Tinc entès que una base de dades en standby es pot utilitzar fins a 10 dies l'any sense cost de llicència (encara que mira per on Microsoft et deixa 30 dies ...)

Des d'un punt de vista tècnic:

-Els canvis a la base de dades principal es captura en els arxius de redo log.

-Els arxius de redo no són permanents, són sobreescrits de forma rotativa (en aquest estat encara no es copia al segon servidor).

-Es fa una còpia del redo log. La còpia permanent es diu archive log.

-Els archive logs (còpies de redo log) es transfereixen al servidor en standby. En sistemes linux per exemple podem fer-ho mitjançant rsync.

-S'apliquen els archive logs transferits a la base de dades en standby quedant actualitzada.

.

 

A nivell global els passos a seguir per muntar el xiringuito poden ser els següents:

1. Configurar la base de dades principal per a que funcioni en mode archivelog.

2. Preparar un script per fer una còpia en calent (usant rman).

3. Crear un fitxer de control standby (control file) a la base de dades principal.

4. Copiar-lo tot (fitxer de configuració, de control i còpia rman) en el segon (on muntem la base de dades en standby).

5. Reconfigurar rutes (usant DB_FILE_NAME_CONVERT a init.ora o maneta).

6. Començar la segona base de dades en mode mount standby database.

7. Restaurar dades (recover database).

8. Sincronitzar de forma periòdica (cron) transportant (rsync?) I aplicant els archive logs.

 

En un altre post intentaré entrar en més detall amb un exemple ... i les utilitats que li podem donar.