RMAN OVERVIEW

Backup einrichten

Archivelog einschalten (wenn noch nicht bei Installation geschehen):
>sqlplus / as sysdba:
SQL>shutdown immediate; -- oder abort
SQL>startup mount;
SQL>alter database archivelog;
SQL>alter database open;
Wenn die DB im Grid eingehängt ist, kann über die grafische Oberfläche ein Backup konfiguriert werden, der dann jedoch komplett auf die DB interne Verwaltung bezogen ist (Scheduler, externe Prozesse,  etc.). Das kann ein Vorteil sein, weil man alles zentral hat, erfordert jedoch entsprechende Infrastruktur und Werkzeuge. Weiterer Vorteil ist, dass über ein Grid auch automatische Emails im Fehlerfall etc. konfigurierbar sind. Für Produktivumgebungen mit vielen Datenbanken daher notwendig!
Für Produktivumgebungen mit einzelner Datenbank ist es auch möglich und sinnvoll einen lokalen Enterprise Manager zu konfigurieren und zu nutzen, der im Prinzip ähnliche Funktionalitäten bietet (Info z. B. LCT).
Alternativ und in kleineren sowie Entwicklungsumgebungen ist RMAN auf der Kommandozeile zusammen mit einem crontab Eintrag verwendbar. Kurz: "old fashioned" aber robust.
Rman Konfiguration kontrollieren (ORA Umgebungsvariablen müssen gesetzt sein) mit "rman target=sys" und "show all" liefert etwa:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF;  # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK;
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/opt/oracle/product/11.2.0/dbs/snapcf_OEL61VM.f'; # default
davon sollte z. B. den Bedürfnissen gemäß angepasst werden:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 1 TIMES TO DISK;
Das kann manuell geschehen, die DB merkt sich das im Controlfile, und/oder man packt das zusätzlich in ein Skriptfile (init_once_$ORACLE_SID.rman o. ä.) zur Dokumentation.
Dazu (Vorschlag) Verzeichnisse
  • $ORACLE_BASE/admin/$ORACLE_SID/rman/
  • $ORACLE_BASE/admin/$ORACLE_SID/rman/logs
anlegen
Eine Datei "backup_$ORACLE_SID.rman" in "$ORACLE_BASE/admin/$ORACLE_SID/rman" anlegen:
# Full database backup in compressed mode, including archive logs.
#
backup as compressed backupset database plus archivelog;
# Delete all archive logs that have been backed up two times.
#
delete noprompt archivelog all backed up 2 times to device type disk;
# Regarding the given retention policy, all obsolete backup sets will be deleted.
#
delete noprompt obsolete;
Damit wird ein vollständiger Backup ausgeführt, alte archivelogs gelöscht und alte Backups entfernt, wenn sie nicht mehr notwendig sind. Hier kann man beliebige weitere RMAN Kommandos einbringen. Das gezeigte Beispiel ist aber ausreichend für ein tägliches Backup.
Dann ein Script "doBackup_$ORACLE_SID.sh" im Linux Oracle home Verzeichnis, directory rman ("/home/oracle/rman") anlegen:
export ORACLE_SID=OEL61VM
export ORACLE_BASE=/opt/oracle
export TNS_ADMIN=$ORACLE_BASE/product/11.2.0/network/admin
TMP_PATH=$PATH
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
export PATH=$TMP_PATH:$ORACLE_HOME/bin
rman target sys/sys@OEL61VM  @$ORACLE_BASE/admin/$ORACLE_SID/rman/backup_$ORACLE_SID.rman >>$ORACLE_BASE/admin/$ORACLE_SID/rman/logs/backup_$ORACLE_SID.log
und für oracle ausführbar machen.
  • Testen.
  • Kontrolle, ob entsprechende Files in der flash_recovery_area angekommen sind.
  • Danach einen crontab Eintrag anlegen. 
Ein Beispiel für täglich 2:00
>crontab -e
0 2 * * * /home/oracle/rman/doBackup_OEL61VM.sh
Den Administration muss mitgeteilt werden, wann welche Verzeichnisse gesichert werden können. 
Dieser Artikel hat neben mir noch weitere Autoren.

No comments:

Post a Comment