Grundlagen der Oracle 12c der Datenbank des Replay

Die Oracle-Datenbank 12c Replay-Funktion als eine Lösung für die Notwendigkeit entwickelt, um der Lage sein, realistische Anwendungstests zu tun. Bevor Database Replay, wenn Sie jede Art von Änderungen gegenüber Leistungs- oder Arbeitsbelastung zu testen wollte, musste man riesige Mengen an Codierung zu fälschen einer Workload ein Drittanbieter-Tool oder tun zu kaufen.

In den meisten Fällen war weder Methode wirklich repräsentativ für Ihre tatsächlichen Arbeitsbelastung. Auch ohne sie zu testen Änderungen an einer Produktionsumgebung kann riskant sein.

Database Replay ist ein weiteres Werkzeug in Ihrem Stall, alle Grundlagen abzudecken.

Im Wesentlichen Database Replay ermöglicht es Ihnen, Ihre Arbeit in Echtzeit zu erfassen und es dann wieder. Darüber hinaus könnten Sie es spielen gegen

  • Eine weitere Datenbank

  • Eine andere Version von Oracle

  • Ein anderes Betriebssystem

Database Replay fängt die Arbeitsbelastung unterhalb der SQL-Ebene. Die Arbeitsbelastung wird in Binär-Dateien gespeichert. Sie können diese Dateien dann in einer Testumgebung zu übertragen, die Auslastung laufen, Probleme zu analysieren, Probleme zu beheben und wieder testen. Die gleiche Arbeitsbelastung ist wiederholbar. In Verbindung mit einem Tool wie Flashback Database, können Sie immer wieder testen, Änderungen in schneller Folge. Es hilft, die Chancen auf etwas Brechen zu reduzieren, wenn Umgebungen geändert werden.

Database Replay bietet einen Mechanismus, mit dieser Art von Situationen zu helfen:

  • Testen

  • Konfigurationsänderungen

  • Upgrades

  • Herabstufungen

  • Anwendungsänderungen

  • Fehlerbeseitigung

  • Speicher, Netzwerk und Verbindungsänderungen

  • plattform~~POS=TRUNC

  • OS Änderungen

  • Die Umstellung auf Real Application Clusters (RAC)

How to Database Replay in Oracle 12c verwenden

Hier ist, wie Database Replay verwenden:

  1. Melden Sie sich bei SQL * Plus als Benutzer mit der Berechtigung SYSDBA.

    Oracle erfordert ein Verzeichnis, in dem die Wiedergabedateien zu schreiben.

  2. Erstellen Sie ein Verzeichnis an einem Speicherort auf dem OS mit viel Platz:

    Du siehst das:

    Directory erstellt.
  3. Starten Sie eine Aufnahme:

    Dieses Beispiel verwendet den Namen CAPTURE_DEMO.

    Im Idealfall, starten Sie die Datenbank, bevor die Einnahme so beginnt, dass Sie alle Transaktionen in der Mitte zu kontrollieren vermeiden können. Natürlich ist dabei nicht immer eine Option, wenn es mit einem Produktionssystem zu tun haben.

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.
  4. Führen Sie Ihre Arbeit.

    Wenn es nur normale Anwendungsverhalten ist, lassen Sie es für die Höhe der Zeit laufen Sie wollen.

  5. Wenn die Arbeitsbelastung abgeschlossen ist oder Ihre Zeit Ziel abgelaufen ist, stoppen Sie den Capture-Prozess:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.

Laut Oracle-Dokumentation kann eine Workload Erfassung auf 4,5 Prozent der Verarbeitungsaufwand summieren sich zu dem System sowie 64 KB Speicher-Overhead für jede Sitzung. Futhermore, wenn der Platz in der Capture-Verzeichnis abläuft, wird das Capture zu stoppen. Alle erfassten Daten bis zu diesem Punkt immer noch nützlich sein.

Die Idee ist, dass Sie Ihre Capture verwenden, um # 147-Replay # 148- die Arbeitsbelastung. Unserer Erfahrung nach ist die Arbeitsbelastung in der Regel gegen eine andere Datenbank verwendet wird, wie zum Beispiel einer Testumgebung. Dies ist jedoch nicht immer der Fall.

Wenn Ihre Datenbankumgebung ist, wo lange Wartungsfenster auftreten können (zB über ein Wochenende), können Sie selbst tun, diese Dinge zu finden:

  • Aktivieren der Flashback Database

  • Erstellen eines Wiederherstellungspunkt am Freitagmorgen

  • Starten einer Aufzeichnung der Arbeitslast für vier Stunden von 08.00 Uhr bis Mittag

  • Die Beschränkung des Systems und die Schaffung weiterer Punkt wiederherzustellen, nachdem die Mitarbeiter nach Hause am Freitag Abend gehen

  • Wiederherstellen der Datenbank bis zu dem Punkt wiederherstellen Freitag Morgen

  • Bereitstellen von Datenbank- oder Anwendungsänderungen

  • Wiedergeben von Ihren Arbeitsaufwand um die Änderungen zu testen

  • Blinkt die Arbeitsbelastung bis Freitag Abend zurück

  • Bereitstellen von Datenbank- oder Anwendungsänderungen wirksam werden, wenn die Arbeiter wieder am Montagmorgen

Wie die Arbeitsbelastung in Oracle 12c replay

Führen Sie die folgenden Schritte, um die Arbeitsbelastung zu wiederholen:

  1. Erstellen Sie ein Verzeichnis für die Replay-Capture-Dateien:

    Du siehst das:

    Directory erstellt.

    Dieses Beispiel nimmt die Wiedergabe am anderen Datenbank stattfindet. Wenn es auf der gleichen Datenbank ist, gibt es keine Notwendigkeit, ein Verzeichnis zu erstellen und die Capture-Dateien zu verschieben, weil sie bereits an der richtigen Stelle sein.

  2. Verschieben Sie die Dateien aus dem Capture-Verzeichnis auf dem Quellsystem in das Verzeichnis auf dem Replay-System.

  3. Beginnen Sie mit der Wiedergabevorgang auf der Datenbank:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.
  4. Initialisieren eines Replay-Sitzung namens REPLAY_DEMO:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.
  5. Sagen Sie Oracle auf die Wiedergabedateien vorbereiten:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.

    Anfang Replay-Kunden, Welche sind Prozesse, die den Aufwand auszuführen und zu verwalten. Diese Prozesse werden von der OS die Befehlszeile gestartet.

  6. Das folgende Beispiel beginnt eine Wiedergabe-Client mit Oracle als Passwort:

    Du siehst das:

    Workload Replay-Client: Release 12.1.0.1.0 - Produktion am Fr 16. August 22.24.44 2013Copyright (c) 1982, 2013, Oracle und / oder ihrer Tochtergesellschaften. Alle Rechte reserved.Wait für die Wiedergabe zu starten (22.24.44)
  7. Sagen Sie der Datenbank, um die Wiedergabe zu starten:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.
  8. Überprüfen Sie den Status, während die Wiedergabe läuft:

    Grundsätzlich Sie die Abfrage der DBA_WORKLOAD_REPLAYS Tabelle. Sie sehen dies (oder so ähnlich):

ID Name STATUSDURATION_SECS ---------- -------------------- ----------- ------ ------- 10 REPLAY_DEMO IN PROGRESS 369

Wenn alles fertig ist, sollten Sie die Replay-Metadaten bereinigen.

  1. Erfassen ID Info auf dem Quellsystem:

    Sie könnte so etwas wie diese:

    ID Name ---------- ----------------------------------- 4 CAPTURE_DEMO
  2. Löschen Sie die Capture-Informationen:

    Du siehst das:

    PL / SQL-Prozedur erfolgreich abgeschlossen.
  3. Finden Sie die Replay-ID auf dem Replay-System:

    Sie könnte so etwas wie diese:

    ID Name ---------- ----------------------------------- 10 REPLAY_DEMO
  4. Löschen Sie die Replay-Informationen:

Menü