Frage

Mit Oracle 10g mit unserem Testserver, was ist die effizienteste / einfache Art und Weise zu sichern und eine Datenbank zu einem statischen Punkt wiederherzustellen, vorausgesetzt, Sie wollen immer auf dem gegebenen Punkt zurückgehen, wenn ein Backup erstellt wurde.

Eine Probe Anwendungsfall wäre die folgende

  1. installieren und konfigurieren, dass alle Software
  2. Ändern Daten an den Basistestpunkt
  3. eine Sicherung nehmen irgendwie (dieser Teil der Frage ist, wie dies zu tun)
  4. Sie testen
  5. zurück 3 Zustand zu Schritt (Wiederherstellung zurück zu Backup-Punkt, das ist die andere Hälfte der Frage)

Optimal wäre dies durch sqlplus oder rman oder einem anderen skript Verfahren abgeschlossen werden.

War es hilfreich?

Lösung

Sie brauchen nicht eine Sicherung an Ihrer Basis Zeit in Anspruch nehmen. Nur Rückblende Datenbank aktivieren, erstellen Sie einen Wiederherstellungspunkt garantiert, Ihre Tests laufen und auf den zuvor erstellten Wiederherstellungspunkt Rückschlag.

Die Schritte hierfür seien:

  1. Starten Sie die Instanz in Mount-Modus.

    Startkraft montieren;

  2. Erstellen Sie den Wiederherstellungspunkt.

    Punkt before_test Garantie Rückblende Datenbank erstellen wiederherzustellen;

  3. Öffnen Sie die Datenbank.

    alt database open;

  4. Führen Sie Ihre Tests.

  5. Herunterfahren und die Instanz montieren.

    shutdown immediate; startup mount;

  6. Rückblick
  7. in den Wiederherstellungspunkt.

    Rückblende Datenbank Wiederherstellungspunkt before_test;

  8. Öffnen Sie die Datenbank.

    alt database open;

Andere Tipps

Sie können eine Funktion in Oracle verwenden genannt Rückblick die Damit können Sie einen Wiederherstellungspunkt erstellen, die Sie leicht zurückspringen können, nachdem Sie die Prüfung getan haben.

von der Website zitiert,

  

Flashback Database ist wie ein ‚rewind   Button‘für die Datenbank. Es bietet   Datenbank Zeitpunkt Erholung   ohne eine Sicherung der erforderlich ist   Datenbank zuerst wiederhergestellt werden. Wann   Sie beseitigen die Zeit es braucht, um   Wiederherstellen einer Datenbanksicherung vom Band,   Datenbank Zeitpunkt Erholung   schnell.

Aus meiner Erfahrung Import / Export ist wahrscheinlich der Weg zu gehen. Export erstellt eine logische Momentaufnahme Ihrer DB, so dass Sie es nicht nützlich für großen DBs oder hohe Leistungsanforderungen finden. Allerdings funktioniert es ideal für Schnappschüsse und so weiter zu machen auf einer Reihe von Maschinen verwendet werden.

Ich habe es auf einem Schienen-Projekt einen prod Snapshot zu erhalten, die wir zwischen den Entwicklern für Integrationstests tauschen konnten und wir haben den Auftrag innerhalb von Rake-Skripten. Wir schrieben ein kleines sqlplus Skript, das die DB zerstörte importiert dann die Dump-Datei über oben.

Einige Artikel können Sie überprüfen möchten: OraFAQ Spickzettel Oracle Wiki

Oracle offenbar nicht mag imp / exp mehr zugunsten von Daten Pumpe , wenn wir verwendeten Daten pumpen wir die Dinge brauchten wir nicht (dh SYSDBA Privilegien wir nicht in einer gemeinsamen Umgebung bekommen konnte) haben könnte. So werfen Sie einen Blick, aber nicht entmutigt werden, wenn Datenpumpe nicht Ihre Tasche ist, die alte imp / exp sind immer noch da :)

Ich kann nicht RMAN für diese Art der Sache empfehlen becuase RMAN eine Menge Setup nimmt und config in der DB muß (es hat auch einen eigenen Katalog DB für Sicherungen, die ein Schmerz im sprichwörtlich für ein Bare-Metal-Wiederherstellung ist ).

Wenn Sie ein Dateisystem verwenden, die Copy-on-Write-Snapshots unterstützt, können Sie die Datenbank in den Zustand versetzt, die Sie wollen. Dann ist alles heruntergefahren und ein Dateisystem Snapshot erstellen. Dann gehen Sie über Ihre Prüfung und wenn Sie bereit sind, neu beginnen Sie den Snapshot zurückrollen konnte. Dies könnte als andere Optionen einfacher sein, vorausgesetzt, Sie ein Dateisystem haben, die Snapshots unterstützt.

@ Michael Ridley Lösung ist perfekt skriptfähig und wird mit jeder Version von Oracle arbeiten.

Das ist genau das, was ich tue, habe ich ein Skript, das wöchentlich läuft auf

  1. Rollback auf das Dateisystem
  2. Anwenden Produktion Archivprotokolle
  3. Nehmen Sie neue "Pre-Data-Masking" FS Snapshot
  4. Reset-Protokolle
  5. Übernehmen "Vorproduktion" Datenmaskierung.
  6. Nehmen Sie neuen "Post-Data-Masking" Snapshot (ermöglicht Rollbacks maskierte Daten zu schreiben)
  7. Datenbank öffnen

So können wir unsere Entwicklungsdatenbanken halten Nähe unserer Produktionsdatenbank.

Um dies zu tun, ich ZFS.

Diese Methode kann auch für Anwendungen eingesetzt werden, oder sogar ganze Sie „Umwelt“ (zum Beispiel könnten Sie „Rollback“ die gesamte Umgebung mit einem einzigen (Skript) Befehl.

Wenn Sie 10g obwohl ausführen, das erste, was Sie wahrscheinlich schauen würden wollen, ist Rückblick, als in die Datenbank aufgebaut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top