Automatisches Backup der Oracle-Datenbank | Windows und Linux

Erfahren Sie, wie Sie automatische Oracle-Datenbank-Backups unter Windows und Linux mithilfe von Data Pump, RMAN und geplanten Aufgaben einrichten. Gewährleisten Sie Datensicherheit und optimieren Sie das Datenbankmanagement mit effektiven Backup-Strategien.

download-icon
Kostenloser Download
für VM, OS, DB, Datei, NAS usw.
maximilian

Updated by Maximilian on 2025/07/15

Inhaltsverzeichnis
  • Warum ist automatisches Backup notwendig?

  • Automatisierte Sicherungsmethoden der Oracle-Datenbank

  • Wie richtet man täglich automatische Oracle-Datenbanksicherungen unter Windows ein?

  • So richten Sie eine tägliche automatische Oracle-Datenbanksicherung unter Linux ein

  • Oracle Automated Disaster Recovery Tool

  • Auto Backup Oracle Database FAQs

  • Schlussfolgerung

Oracle Database ist heute eine der am weitesten verbreiteten Datenbanken weltweit. Mit ihren leistungsstarken Funktionen, Stabilität und Sicherheit wird sie in vielen Bereichen breit angewandt. Für Datenbankadministratoren (DBAs) ist es eine äußerst wichtige Aufgabe, den reibungslosen Betrieb der Datenbank sowie die Datensicherheit zu gewährleisten. In der täglichen Wartung der Datenbank ist das Durchführen regelmäßiger Datensicherungen eine wesentliche Aufgabe. Oracle Database stellt mehrere Methoden zur Datensicherung bereit, darunter manuelle Sicherung und RMAN-Sicherung. Dabei ist die automatische Sicherung eine effektive Methode, um die Datensicherheit zuverlässig zu gewährleisten. Automatische Sicherungen reduzieren nicht nur manuelle Eingriffe und minimieren Fehlerquellen, sondern ermöglichen zudem eine schnelle Wiederherstellung der Daten im Falle eines Datenbankausfalls.

Warum ist automatisches Backup notwendig?

Als zentrale Datenspeicherung von Anwendungen enthalten Datenbanken eine große Menge an kritischen Informationen, wie Benutzerdaten und Konfigurationsinformationen. Falls die Datenbank unerwartete Ausfälle oder Datenverluste erleidet, kann dies schwerwiegende Auswirkungen haben oder sogar erhebliche Geschäftsverluste verursachen. Daher ist es entscheidend, die Datenbank regelmäßig zu sichern und sicherzustellen, dass die Sicherungsdateien sicher gespeichert werden.

Manuelle Sicherungen weisen viele Nachteile auf, beispielsweise die Anfälligkeit für Nachlässigkeit und dass sie nicht rechtzeitig durchgeführt werden. Daher wird die automatische Datensicherung zu einer besseren Wahl. Durch das Erstellen von Skripten für automatische Sicherungen kann die Effizienz gesteigert, menschliches Versagen reduziert und die Datensicherheit besser gewährleistet werden.

Automatisierte Sicherungsmethoden der Oracle-Datenbank

In der Oracle-Datenbank kann eine automatisierte Sicherung mithilfe des Aufgabenplaners des Betriebssystems (z. B. Cron-Jobs) und der integrierten Tools von Oracle erreicht werden. Durch das Schreiben von Skripten können geplante Aufgaben eingerichtet werden, die Sicherungsvorgänge zu vordefinierten Zeiten automatisch ausführen. Zu den häufig verwendeten automatisierten Sicherungstools in Oracle gehören Data Pump und RMAN. Data Pump wird zum Exportieren von Datenbankdaten verwendet, während RMAN hauptsächlich für die Datensicherung und Wiederherstellung verantwortlich ist.

Data Pump (expdp/impdp) bietet effiziente Datenbank-Export-/Importfunktionen mit Funktionen wie Kompression, Netzwerkübertragung und paralleler Verarbeitung. Es ermöglicht DBAs, Exportparameter zu definieren und Backups über Cron-Jobs zu automatisieren. RMAN (Recovery Manager) ist für umfassende Datenbanksicherungs- und Wiederherstellungsvorgänge konzipiert und unterstützt inkrementelle und physische Backups sowie die Verfolgung von Sicherungsdateien. Es ermöglicht automatisierte Backups durch Skripting und Betriebssystemplanung. Oracle Enterprise Manager (OEM) bietet eine grafische Benutzeroberfläche für die Backup-Verwaltung, während auch Drittanbieterwerkzeuge in Oracle integriert werden können, um automatisierte Backups durchzuführen.

Wie richtet man täglich automatische Oracle-Datenbanksicherungen unter Windows ein?

In einer Windows-Umgebung können tägliche automatische Sicherungen und das Löschen von Oracle-Datenbanksicherungen mithilfe des Aufgabenplans erreicht werden.

1. Erstellen einer Batch-Datei (.bat)

1.1 Einfaches Skript

exp user/password@ORCL direct=y buffer=100000 file=D:\backup\dmp%date:~0,10% LOG=D:\backup\data.log  
forfiles /p "D:\backup" /s /m *.dmp /d -7 /c "cmd /c del @path"

Erklärung:

Der Befehl exp ist der Oracle-Dump-Sicherungsbefehl, bei dem %date:~0,10% das Datum in DOS extrahiert.

forfiles ist ein Windows-Befehl zur Dateisuche, der nach .dmp-Dateien im Sicherungsverzeichnis sucht, die innerhalb der letzten drei Tage erstellt wurden, und löscht sie.

Parameter von forfiles:

/p gibt den Suchpfad an (in diesem Fall das Verzeichnis, in dem die Sicherungsdateien gespeichert sind).

/m durchsucht Dateien anhand einer Maske (z. B. .dmp für Sicherungsdateien).

/d filtert Dateien, die vor oder nach einem bestimmten Datum geändert wurden (-3 bedeutet Dateien, die älter als drei Tage sind).

/s beinhaltet Unterverzeichnisse.

/c gibt den Befehl an, der für jede Datei ausgeführt werden soll (z. B. cmd /c del @file, um die Datei zu löschen).

1.2 Erweitertes Skript

@echo off
echo ================================================
echo Oracle Database Automated Backup Script in Windows
echo 1. Uses the current date as the backup file name.
echo 2. Automatically deletes backups older than 7 days.
echo ================================================
:: Extract year, month, day, hour, minute, and second.
set dd=%DATE:~8,2%
set mm=%DATE:~5,2%
set yy=%DATE:~0,4%
set Tss=%TIME:~6,2%
set Tmm=%TIME:~3,2%
set Thh=%TIME:~0,2%
set Thh=%Thh: =0%
:: Generate timestamp in YYYYMMDDHHmmss format.
set BACKUPDATE=%yy%%mm%%dd%%Thh%%Tmm%%Tss%
:: Set username, password, and database name.
set USER=admin
set PASSWORD=admin
set DATABASE=ORCL
:: Create backup directories if they do not exist.
if not exist "D:\backup_database\data" mkdir D:\backup_database\data
if not exist "D:\backup_database\log" mkdir D:\backup_database\log
set DATADIR=D:\backup_database\data
set LOGDIR=D:\backup_database\log
:: Perform the backup.
exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log
:: Delete backups and logs older than 7 days.
forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path"
exit

Hinweis: Wenn beim Ausführen des Skripts chinesische Zeichen fehlerhaft angezeigt werden, speichern Sie die Datei mithilfe von Notepad im ANSI-Format.

2. Erstellen einer geplanten Aufgabe in Windows

Öffnen Sie den Windows-Taskplaner:

Control Panel → System and Security → Administrative Tools → Task Scheduler

Öffnen Sie den "Create Basic Task"-Assistenten im rechten Bereich.

Geben Sie einen Aufgabennamen und eine optionale Beschreibung ein, und klicken Sie dann auf Next.

Legen Sie den Auslöser als Daily fest.

Wählen Sie Start a Program, durchsuchen Sie die Batch-Datei und vervollständigen Sie die Einrichtung.

So richten Sie eine tägliche automatische Oracle-Datenbanksicherung unter Linux ein  

1. Identifizieren Sie die Umgebungsvariablen der Datenbank  

Wenn Sie das Root-Konto verwenden, müssen Sie zunächst zum Datenbankbenutzer wechseln:  

su oracle

Überprüfen Sie die Umgebungsvariablen:  

cat ~/.bash_profile

Stellen Sie sicher, dass die folgenden Umgebungsvariablen gesetzt sind:  

export PATH
export ORACLE_BASE=/home/nnc_db/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl

2. Erstellen des Backup-Skripts  

Bearbeite eine neue Skriptdatei:  

vi bak.sh

Kopieren und fügen Sie die Umgebungsvariablen in `bak.sh` ein. Definieren Sie anschließend eine Variable `date` (wird für die Benennung der Backup-Dateien verwendet) und verwenden Sie den Befehl `expdp`, um die Datenbank zu exportieren:  

date=$(date +%Y%m%d)
expdp db_username/db_password@db_instance dumpfile=${date}_db_auto_backup.dmp schemas=db_username compression=all

Speichern und beenden.

3. Backup mithilfe von crontab planen  

Bearbeiten Sie die Crontab-Datei:  

crontab -e

Fügen Sie im Texteditor die folgende Zeile hinzu:  

0 0 * * * /home/nnc_db/bak.sh

Dies bedeutet, dass das Skript `/home/nnc_db/bak.sh` täglich um 12:00 Uhr mittags ausgeführt wird. Passen Sie die Zeit und den Dateipfad nach Bedarf an. 

Starten Sie den Cron-Dienst neu:  

service crond restart

4. Überprüfen Sie, ob der Task erfolgreich ausgeführt wird  

Einige Benutzer haben berichtet, dass Crontab-Aufgaben innerhalb der ersten drei Minuten nach der Einrichtung möglicherweise nicht sofort wirksam werden. Um zu testen, ob Ihr Skript ordnungsgemäß ausgeführt wird, können Sie es so planen, dass es jede Minute ausgeführt wird:  

Wenn das Skript ordnungsgemäß ausgeführt wird, liegt das Problem wahrscheinlich an einer Verzögerung bei der Aktivierung von Crontab.  

Zusätzlich zeigt die manuelle Ausführung des Skripts detaillierte Ausgaben an, jedoch gibt es keine direkte Ausgabe, wenn es über `crontab` geplant wird. Um zu prüfen, ob das Skript ausgeführt wird, überprüfen Sie die Protokolle in:  

/var/spool/mail/

Oracle Automated Disaster Recovery Tool

Vinchin Backup & Recovery ist ein leistungsfähiges Sicherungs- und Wiederherstellungstool für virtuelle Maschinen und Datenbanken. Es bietet erweiterte Funktionen zur Datensicherung und Katastrophenwiederherstellung, einschließlich automatischer VM-Sicherung, agentenloser Backup, LAN/LAN-freier Backup, Offsite-Kopie, sofortiger Wiederherstellung, effektiver Datenvolumenreduzierung, Cloud-Archivierung usw. Dabei folgt es strikt der 3-2-1-Golden-Backup-Architektur, um die Datensicherheit und Integrität umfassend zu gewährleisten. Zudem bieten Datenverschlüsselung und Schutz vor Ransomware eine doppelte Absicherung für Ihre Datenbanksicherungen.

Für die Sicherung der Oracle-Datenbank sind nur 4 Schritte erforderlich:

1. Wählen Sie das Sicherungsobjekt aus.

Sichern Sie die Oracle-Datenbank

2. Sichern Sie das Backup-Ziel aus.

Sichern Sie die Oracle-Datenbank

3. Sichern Sie die Backup-Strategien.

Oracle-Datenbank sichern

Hier können Sie Zeitpläne für Ihre Sicherungsaufträge einrichten. Sie können wöchentliche oder monatliche Vollsicherungen durchführen und tägliche inkrementelle Sicherungen erstellen.

4. Stellenangebot überprüfen und einreichen.

Sichern Sie die Oracle-Datenbank

Testen Sie jetzt die 60-tägige, voll funktionsfähige kostenlose Testversion von Vinchin Backup & Recovery, um Ihre Oracle-Daten einfach zu schützen und automatisches Backup sowie schnelle Wiederherstellung zu ermöglichen!

Auto Backup Oracle Database FAQs

1. Was ist der Unterschied zwischen RMAN und Data Pump?

RMAN wird hauptsächlich für Backup und Wiederherstellung verwendet und ermöglicht physische Backups von Datenbankdateien, inkrementelle Backups sowie die Wiederherstellung zu einem bestimmten Zeitpunkt. Im Gegensatz dazu wird Data Pump für logische Backups verwendet, um Datenbankobjekte wie Tabellen, Schemata oder ganze Datenbanken im portablen Format zu exportieren und zu importieren. Während RMAN am besten für die vollständige Wiederherstellung der Datenbank geeignet ist, eignet sich Data Pump ideal für Datamigration, Replikation und selektive Datenauswahl.

2. Wie stelle ich eine einzelne Tabelle aus einem RMAN-Backup wieder her?

Verwenden Sie die RMAN-Tablespace-Punktwiederherstellung oder Data Pump, um eine einzelne Tabelle wiederherzustellen.

Beispiel mit Data Pump:

impdp system/password directory=DATA_PUMP_DIR dumpfile=backup.dmp remap_table=old_table:new_table

Schlussfolgerung

Das automatische Backup der Oracle-Datenbank ist unerlässlich, um die Datensicherheit zu gewährleisten, menschliche Fehler zu minimieren und eine schnelle Wiederherstellung im Falle von Ausfällen zu ermöglichen. Mit integrierten Tools wie Data Pump und RMAN sowie Planern des Betriebssystems können Datenbankadministratoren effiziente Backup-Strategien sowohl unter Windows als auch unter Linux implementieren. Richtig konfigurierte automatische Backups reduzieren das Risiko von Datenverlusten und stellen die Fortführung der Geschäftsaktivitäten sicher, wodurch sie zu einem unverzichtbaren Bestandteil der Datenbankwartung werden.

Teilen auf:

Categories: Database Backup