PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Oracle9i sichern?



TheDodger
16-06-2002, 10:50
Mahlzeit!

Ich stehe im Moment vor der Aufgabe ein Script zu erstellen, welches eine komplette Oracle9i sichern soll.
Ich hänge im Moment in einem gewissen Konflikt ... soll ich die DB komplett runterfahren und dann mit tar das komplette Verzeichniss /opt/oracle sichern, oder ein DB-Dump der Daten machen?
Wenn ich ein Dump mache, werden dann auch sämtliche Trigger und konsorten mit ge'dump't ?
Da dies ein Produktionssystem ist, ist es schon wichtig :)

Martin Ament
17-06-2002, 19:43
also ein dump beinhaltet schon das komplette schema, also incl. constraints, trigger, indexes, grants etc.

Wenn das aber ein produktivsystem ist, dann ist das nicht so ganz die richtige möglichkeit, denn wenn in dem moment deines dumps in der db eine transaktion festgeschrieben wird, dann kriegst du eine inkonsistenz in deine db.

Du solltes dich mal mit dem Archivelogmodus der db beschäftigen. Dazu steht genaueres in der doku.

Du kannst dann die Datenfiles sichern, und wenn du einen crash hast, dann spielst du die datenfiles wieder ein, und kriegst über das nachziehen der archivelogs wieder einen konsistenten bestand. Da geht eben auch auf einer db in der permanent transactionen laufen.

Wir habe das so, dass wir die db im Archivelogmodus haben, die archivelogdateien sind gespielgelt, und die datenfiles werden gesichert.

Zu den verschiedenen Sicherungskonzepten steht ausführliches in der Doku.

ähmm, /opt/oracle würde ich nicht immer mit sichern, einmal reicht. Das band dann gut wegschließen, denn ein voll funktionsfähiges oracle ist was wert.

die daten sollten eh in einem extra verzeichnis sein, es genügt dann immer die *.dbf, controlfiles und die parameterfiles zu sichern.



martin

TheDodger
28-06-2002, 10:04
Sorry, daß die Antwort etwas auf sich warten ließ ...

Also, da hab ich wohl was Verwechselt ... wir haben hier kein Produktionssystem, sondern eine Entwicklungsumgebung ... ich war wohl mit meinen Gedanken schon 'ne Stufe weiter :)

Also ich habe hier definierte Zugriffe von 08:00 - 18:00. Danach ist Ruhe in der Kiste.
Ich habe mir gedacht, den Listener und die DB mittels Script komplett runterzufahren und dann das komplette oracle Verzeichniss auf's Tape zu packen.
Nach einem Restore sollte das doch so auch funktionieren, oder?

Martin Ament
28-06-2002, 18:56
Es kommt darauf an,

die elementaren Teile sind die Controlfiles (von denen hoffentlich mehrere existieren) diese müssen zu den Datenfiles passen. wenn du also alles unter opt hast, dann sollte es auch kein Problem geben.

Vergiss nur nicht die Umgebung des users mitzusichern, dem die db gehört.

Wir haben auf diese Art schon unsere DBs dupliziert, d.h. auf einer Linuxkiste eingerichtet, und dann auf Band, und das dann auf 10 anderen eingespielt, hat wunderbar funktioniert, sogar zusammen mit dem ias.

Martin