it-swarm.com.de

Archivprotokolle füllen den Speicherplatz des Flash Recovery Area (FRA) aus

Ich wurde eingestellt, um eine Position als DBA zu besetzen, für die ich noch nicht bereit war, und während das Training mich dorthin bringt, bin ich einem potenziellen Problem nahe.

Der Flash Recovery Area (FRA) meiner Oracle 11g-Datenbank ist fast voll (2,5% übrig). Es befindet sich im ARCHIVELOG-Modus, da wir Live-Backups durchführen (zumindest wurde mir dies gesagt). Wir haben alle nicht benötigten Sicherungen über den Unternehmensmanager gelöscht, aber die Archivprotokolle belegen immer noch über 50% des zugewiesenen FRA-Speicherplatzes. Ist es möglich, einige der älteren Archivprotokolle zu löschen, um Speicherplatz freizugeben? Der Server enthält noch Protokolle von vor einigen Monaten, und so weit zurück brauchen wir eigentlich keine Backups.

Wenn ich sie löschen kann, wie geht das am besten?

6

Oracle löscht veraltete Dateien automatisch. Im Allgemeinen sollten Sie nichts manuell löschen müssen.

Ein wichtiger Teil der RMAN-Wartung ist das Löschen nicht mehr benötigter Sicherungen. Wenn Sie einen Bereich für die schnelle Wiederherstellung konfigurieren, löscht die Datenbank automatisch nicht benötigte Dateien in diesem Bereich automatisch

Von Übersicht über RMAN Backup und Repository Maintenance

Stellen Sie zunächst fest, ob Ihnen der Speicherplatz ausgeht. Verwenden Sie beispielsweise die folgende Abfrage (einschließlich Beispielausgabe):

SELECT * FROM V$RECOVERY_FILE_DEST;

NAME            SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
--------------  ----------- ---------- ----------------- ---------------
/mydisk/rcva     5368709120 109240320             256000              28

Wenn Ihnen der Speicherplatz ausgeht, müssen Sie entweder Ihre Aufbewahrungsrichtlinie verringern oder die Größe Ihrer FRA erhöhen.

5
Jussi

Ich empfehle dringend, dafür ein kleines RMAN-Skript zu schreiben. So etwas sollte funktionieren:

run {
    allocate channel "dsk1" device type disk;
    allocate channel "dsk2" device type disk;
    crosscheck backup;
    crosscheck archivelog all;
    delete noprompt expired backup;
    delete noprompt expired archivelog all;
    report obsolete recovery window of 7 days;
    delete noprompt obsolete recovery window of 7 days;
    backup as compressed backupset archivelog all;
    delete noprompt archivelog until time 'sysdate-1' backed up 1 times to device type disk;
}

Erläuterung:

allocate channel <TAG> device type disk;

Diese Leitungen sind optional, ermöglichen jedoch die Zuweisung mehrerer Kanäle, wenn Sie über mehr als einen physischen Kanal eine Verbindung zum Speicher herstellen

crosscheck backup;
crosscheck archivelog all;

Diese Kreuzprüfzeilen überprüfen das tatsächliche RMAN-Inventar (in der Steuerdatei) anhand des Inhalts im Speicher. Die Sicherungen und/oder Archivprotokolle, die nicht mehr gespeichert sind, werden als "ABGELAUFEN" markiert.

delete noprompt expired backup;
delete noprompt expired archivelog all;

Diese löschen alle Inventareinträge, die im Speicher nicht übereinstimmen.

report obsolete recovery window of 7 days;

Diese Zeile markiert alle Sicherungsdateien, die nicht mehr benötigt werden, um die Datenbank in einem konsistenten Zustand bis vor 7 Tagen wiederherzustellen, als "OBSOLETE".

delete noprompt obsolete recovery window of 7 days;

Dieser Befehl löscht alle als 'OBSOLETE' gekennzeichneten Dateien.

backup as compressed backupset archivelog all;

Dieser Befehl sichert alle aktuellen Archive als komprimiertes Backupset.

delete noprompt archivelog until time 'sysdate-1' backed up 1 times to device type disk;

Dieser Befehl löscht alle Archive, die älter als 1 Tag sind und bereits gesichert wurden.

Hoffe das hilft dir!

0
Silvarion