Zum Inhalt springen

[ORACLE] Backup Controlfile


moo_kuh

Empfohlene Beiträge

Hallo Kollegen,

ich habe mal eine kleine Frage zum Thema Backup Controlfile.

Es gibt ja 2 Möglichkeiten ein Backup vom Controlfile zu erstellen

1) alter database backup controlfile to trace

2) alter database backup controlfile to 'FILENAME'

Zu 1)

Hier kann ich die Datenbank evtl. umbennen oder gewissen Einstellungen korregieren die man sonst nicht mehr ändern kann. Das "Controlfile" ist im Klartext. Aus diesem File erzeuge ich dann wieder die binären Controlfiles

Zu 2)

Das ist eine binäre Kopie des Controlfiles.

Und nun meine Frage:

Wenn ich eines der beiden "Controlfiles" benutzen will, soll man ja die Datenbank mit "recover database using backup controlfile" wiederherstellen.

Mir ist aber ganz ehrlich gesagt nicht klar, was der IDENTIFIER "using backup controlfile" für einen Sinn hat?

Wenn ich z.B. das Controlfile aus Punkt 2 nehme, ist es doch nicht unterschiedlich wenn ich Datenbank restoren will (gut die fortlaufenden SCNs, Sequenznummer der Redologs unterscheiden sich).. aber das bekommt Oracle doch auch hin, wenn ich nur "recover database" mache, oder?

Bei Punkt1 leuchtet es mir auch nicht ein, da ich aus der Tracedatei wieder die Controlfiles erstelle (gut die SCNs, Sequenznummern gibt es überhaupt nicht mehr), aber das bekommt Oracle ja auch hin, wenn ich nur "recover database" mache, oder?

In beiden Fällen öffne ich die Datenbank mit OPEN RESET LOGS.

Kann mir vielleicht mal jemand den genauen Sinn von IDENTIFIER "using backup controlfile" erklären und worin der Unterschied zu einem recover ohne diesen Zusatz liegt?

In beiden Fällen wurde ein Onlinebackup erstellt und das "Backup" des Controlfiles mitgesichert.

Vielen Dank :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also wenn Du RMAN verwendest (wozu ich dringendst rate), dann sagst Du einfach

CONFIGURE CONTROLFILE AUTOBACKUP ON

Und damit ist dein Controlfile im Backupset mit drinnen. Einfach mal in RMAN ein

show all

eingeben und dir die eingestellten Parameter ausgeben lassen.

Im einfachsten Fall genügt dann folgendes:

restore controlfile from autobackup;

alter database mount;

recover database;

alter database open resetlogs,

Dim

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn ich eines der beiden "Controlfiles" benutzen will, soll man ja die Datenbank mit "recover database using backup controlfile" wiederherstellen.

nur wenn sqlplus zum recovern verwendet wird. ab 9ir2 ist RMAN die erste wahl.

Wenn ich z.B. das Controlfile aus Punkt 2 nehme, ist es doch nicht unterschiedlich wenn ich Datenbank restoren will (gut die fortlaufenden SCNs, Sequenznummer der Redologs unterscheiden sich).. aber das bekommt Oracle doch auch hin, wenn ich nur "recover database" mache, oder?

es unterscheidet sich sehr wohl. zum einen hat das backup controlfile ein flag, was es als backup kennzeichnet, zum anderen sind die SCN marker für alle datenfiles auf 0xffffffff (unlimited) gesetzt. beim recovery wird dann das flag gelöscht und die marker auf die echten werten gesetzt.

Bei Punkt1 leuchtet es mir auch nicht ein, da ich aus der Tracedatei wieder die Controlfiles erstelle (gut die SCNs, Sequenznummern gibt es überhaupt nicht mehr), aber das bekommt Oracle ja auch hin, wenn ich nur "recover database" mache, oder?

das gleiche procedere wie oben, nur gehen auch noch alle backupinformationen verloren.

In beiden Fällen öffne ich die Datenbank mit OPEN RESET LOGS.

geht nicht anders, da die information, an welcher stelle im redologstream oracle stand, verloren ist. resetlogs definiert somit einen neuen anfangspunkt.

generell RMAN für backup/recovery verwenden. sqlplus ist veraltet und wird nicht weiterentwickelt.

-j

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also wenn Du RMAN verwendest (wozu ich dringendst rate), dann sagst Du einfach

CONFIGURE CONTROLFILE AUTOBACKUP ON

Und damit ist dein Controlfile im Backupset mit drinnen. Einfach mal in RMAN ein

show all

eingeben und dir die eingestellten Parameter ausgeben lassen.

Im einfachsten Fall genügt dann folgendes:

restore controlfile from autobackup;

alter database mount;

recover database;

alter database open resetlogs,

Dim

und wie komme ich an das controlfile wieder heran, wenn das controlfile mit den metadaten des backupsets verloren ist? typisches henne-ei-problem. das controlfile mit den metadaten des backups sollte man getrennt von dem backupset speichern um im notfall wieder an die metadaten heranzukommen oder einen recovery catalog verwenden, was im bezug auf die metadaten das gleiche ist.

-j

Link zu diesem Kommentar
Auf anderen Seiten teilen

es unterscheidet sich sehr wohl. zum einen hat das backup controlfile ein flag, was es als backup kennzeichnet, zum anderen sind die SCN marker für alle datenfiles auf 0xffffffff (unlimited) gesetzt. beim recovery wird dann das flag gelöscht und die marker auf die echten werten gesetzt.

geht nicht anders, da die information, an welcher stelle im redologstream oracle stand, verloren ist. resetlogs definiert somit einen neuen anfangspunkt.

So habe ich das bisher auch verstanden. Durch das Flag erkennt Oracle das die aktuelle SCN aus dem aktiven Redolog nicht mehr verfügbar ist und liest die jeweiligen letzten SCNs aus den Headern der Datenfiles und recovered dann bis zu einem "cancel" oder "until".

Hätte ich noch ein aktuelles intaktes controlfile könnte ich ein einfaches "recover database" machen, da Oracle noch weiss wie weit er zum kompletten recover heranfahren muss (vorrausgesetzt ich hätte noch die aktuellen Redologs). Ist das korrekt?

generell RMAN für backup/recovery verwenden. sqlplus ist veraltet und wird nicht weiterentwickelt.

-j

Das ist korrekt.. unsere Backupsoftware benutzt aber noch das "alter database backup" kommando und unser softwarelieferant gibt bisher auch nur für diese Methode Support.

Für unsere anderen Oracle Installationen haben wir RMAN im Einsatz.

Danke :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hätte ich noch ein aktuelles intaktes controlfile könnte ich ein einfaches "recover database" machen, da Oracle noch weiss wie weit er zum kompletten recover heranfahren muss (vorrausgesetzt ich hätte noch die aktuellen Redologs). Ist das korrekt?

ja, das ist korrekt und die übliche methode für controlfile recover.

-j

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...