CV Edwin Kessels

Ontwikkelen en implementeren van Oracle RMAN Backup/recovery strategie voor Oracle databases in de OTAP-straat.

bw

BrabantWater – Den Bosch

Februari 2007 – april 2007

Opdrachtbeschrijving

Gedurende 2007 werd in het kader van het VIS2006-project een nieuwe applicatie geimplementeerd. Deze applicatie welke ontwikkeld is in Oracle is overgenomen van een ander waterbedrijf in Nederland. De front-end van de applicatie is ontwikkeld in Oracle Forms en Reports. De back-end bestaat uit een Oracle Database en de Oracle Application Server. Voor batch-processen wordt Cronacle van Redwood Software ingezet.

Voor de Oracle Databases moest een backup/recovery plan worden ontwikkeld en daadwerkelijk worden gebouwd. De uitgangspunten waren als volgt: Oracle RMAN moest worden ingezet voor de backup/recovery van de database en de strategie moest zo worden opgezet dat een eventuele recovery simpel uit te voeren was. Een voorwaarde was om RMAN te integreren met Tivoli TSM om de backup naar tape te kunnen schrijven. De Oracle Application Server bleef buiten dit backup/recovery plan.

Omgeving

Het hart van de infrastructuur van het VIS2006 project bestond uit een Sun Solaris server waarop de verschillende omgevingen (productie, acceptatie, ontwikkeling en test) afgescheiden naast elkaar draaiden. Als database voor ondermeer de applicatie-data, Cronacle repository en RMAN Repository werd een Oracle 10g Release 2 database gebruikt. Er is specifiek gekozen om een RMAN Repository te gebruiken omdat hier de backup/recovery-scripts in de database kunnen worden opgeslagen en zodoende bruikbaar zijn voor de verschillende database in de verschillende OTAP-smaken.

Werkzaamheden

De basis voor het ontwikkelen van de juiste backup-recovery strategie was het in kaart brengen van de verschillende eisen die aan de beschikbaarheid en MTTR (mean time to recover) van de verschillende omgevingen (OTAP) werd gesteld. Deze waren uiteraard niet voor alle omgeving hetzelfde waardoor 1 strategie niet voldoende was. Voor de niet-productie-omgevingen is gekozen voor een dagelijkse offline backup (mounted database) met RMAN (in de nacht). De belangrijkste reden hiervoor was het niet onnodig complex maken van de recovery-strategie zodat deze niet noodzakelijkerwijs door een (ervaren) DBA’er uitgevoerd hoeft te worden. De scripts voor backup en recovery voor de offline-backup worden opgeslagen in een centrale RMAN Repository.

Voor de productie-database (applicatie-data en de Cronacle Repository) is uiteraard gekozen voor een online-backup. Gezien de grootte van de database is gekozen initieel gekozen om een dagelijkse level0-backup te maken. De archived redo log files worden elk uur veiliggesteld. Er is gekozen om de backup-sets niet direct naar tape te schrijven, maar eerst te parkeren in de flash recovery area van de Oracle database. Nadat alle backup-sets, archived redo logs files en control files (en spfiles) hierbinnen beschikaar zijn, wordt de gehele flash recovery area met 1 RMAN commando direct naar tape gezet.

Uiteraard is er ook een backup/recovery-strategie bedacht voor de RMAN repository. Als strategie is gekozen voor een export van het RMAN-schema na het backup-window waardoor gegarandeerd kan worden dat de meta-data over de backups niet verloren gaat. Uiteraard is de backup-informatie ook beschikbaar in de control file van de veiliggestelde database.

Met betrekking tot Cronacle scripts zijn er nog een aantal verbeteringen doorgevoerd om het totale batch-window gelet op de doorlooptijd terug te dringen.

Relevante producten

 Databases

Oracle 10g Release 2

Operating Systems

Unix Sun Solaris

Software pakketten

Batch Scheduling – Redwood Cronacle versie 6
Backup software – Tivoli TSM Data Protector for Oracle