2016-08-10 4 views
0

Ich bin mit einem Client, der die Hälfte seiner OpenEdge-Datenbank mit unerwünschten Audit-Datensätzen gefüllt hat (benutzerdefiniertes Auditing; kein OE-Auditing). Die Datenbank ist etwa 200 GB und 97 GB sind diese Audit-Datensätze. Der vom Benutzer erstellte Auditing-Prozess ist jetzt deaktiviert und wird nicht mehr verwendet und die Daten müssen einfach gelöscht werden.Entfernen eines Bereichs aus einer OpenEdge-Datenbank

Wir können die Daten nicht programmgesteuert löschen, da wir hier keine Dev-Tools haben. Ich weiß, dass die Daten sicher gelöscht werden können, ohne dass es an anderen Stellen in der db zu Waisen oder referenziellen Integritätsproblemen kommt.

Die Audit-Tabellen befinden sich in einem eigenen Bereich, wie in der st-Datei definiert.

Sie haben Dumping und Laden getestet (ohne die Audit-Daten), aber sie haben die Last nach 4 Tagen gestoppt, weil sie es für zu lang hielten, ohne ihre primäre Geschäftsdatenbank zu sein. Dies ist also in einer Produktionsumgebung nicht vertretbar.

Sie haben versucht, einfach die Datendateien zu entfernen und die st-Datei zu bearbeiten, aber sie hatten dann Probleme mit Backup/Restore - wahrscheinlich aufgrund der fehlenden Übereinstimmung in der st-Datei (ich war nicht in der Nähe, um die Probleme aus erster Hand zu sehen)).

Was ist der schnellste und einfachste Weg, diese Daten zu löschen?

+1

sollten Sie in der Lage sein Dump & Last 200 GB in etwa einem halben Tag. Sie machen etwas sehr falsch. –

+0

Hmm, interessant - ist das abhängig von laufenden SSDs? Was sind die normalen Fallstricke für eine Dump & Load-Einnahme so lange - es ist eine ziemlich einfache Point-and-Click-Übung, nicht wahr? Ist es nicht nur Hardware abhängig? – Drammy

+1

Das ist mit ziemlich beschissenen HW - rotierenden Rost und RAID5. Wenn Sie * gute * HW haben, sollten Sie in der Lage sein, das Ganze in ein paar Stunden zu erledigen. –

Antwort

3

Proutil "truncate Bereich" sollte tun, was Sie beschreiben.

Sobald die Daten über den abgeschnittenen Bereich entfernt wurden, löschen Sie die Tabellen & Indizes und entfernen Sie die störenden Extents.

(Ohne Entwickler-Tools können Sie einen Stub-Speicherbereich und „Tisch bewegen“ die leeren Tabellen und Indizes anstatt abzufallen sie erstellen müssen.)

+0

Danke Tom - ich habe mir das gerade angesehen. Die Fortschrittsdokumentation besagt, dass die Indizes deaktiviert sind, aber nichts darüber sagt, sie später zu aktivieren. Sind sie nach Abschluss der Kürzung aktiviert? Sie möchten die Tabellen nicht löschen. nur die Daten. Wurde die Tabelle einfach gelöscht, um den Speicherplatz von den Extents wiederherzustellen, oder ist sie Teil des Prozesses? – Drammy

+2

Sie müssten die Indizes anschließend erneut aktivieren. Aber wenn die Tische leer sind, ist das keine große Sache. Die Tische fallen zu lassen, nur weil ich dachte, dass du das machen wolltest. Wenn Sie den Speicherplatz wiederherstellen müssen, sollten Sie die Tabellen und Indizes auf einen neuen Bereich (Größe mit variabler Größe) verschieben und dann den alten Bereich entfernen. –

Verwandte Themen