Gibt es eine Möglichkeit die Dump-Datei Größe einer Sybase-Datenbank zu reduzieren?

StackOverflow https://stackoverflow.com/questions/206787

  •  03-07-2019
  •  | 
  •  

Frage

Wenn ich ein Sybase-Datenbank-Dump, scheint es keine Rolle, ob es Daten ist in den Tabellen oder nicht, ist die Dateigröße gleich. Ich habe gesagt, dass dies auf die Tatsache, dass meine Dump-Datei ist binär und nicht logisch, so dass die Datei von der Dump-Datei wird auf der zugewiesenen Größe der Datenbank basiert. Ich weiß, dass Oracle logische Dump-Dateien verwenden kann, aber kann ich Sybase die etwas ähnliches zu tun, oder gibt es andere hinterhältige Möglichkeiten, die Dump-Datei Größe immer nach unten?

War es hilfreich?

Lösung

irgendwo Da rund Version 12 Sie in der Lage gewesen komprimierte Deponien in ASE auszuführen.

Die Syntax ist: dump database database_name file_name [mit compression = COMPRESS_LEVEL]

COMPRESS_LEVEL ist 0-9. 0 ist keine Komprimierung und 9 ist am meisten. Je mehr Sie komprimieren, je höher die CPU-Auslastung während der Dump ausgeführt wird. Sie brauchen nur ein wenig Tests peform ein angemessenes Gleichgewicht der Größe im Vergleich zu Leistung zu finden.

Es wurden keine speziellen Befehle nötig sind, um die Speicher-Abbild zu laden.

Andere Tipps

Wenn Sie bereits verwenden COMPRESS_LEVEL 9 und wollen noch mehr Kompression, dann ist es möglich, die Datei mit bzip2 erneut zu komprimieren.

Wenn Sie einfach die komprimierte Datei bzip2, werden Sie ~ 10% ige Verbesserung erhalten. Wenn Sie dekomprimieren und neu komprimieren können Sie Verbesserungen im 30% -Bereich sehen. Beachten Sie aber, dass Sie zu un-Kompresse haben werden und / oder gzip die Datei erneut, um für Sybase es zu laden.

gunzip -c pubs_1.dmp | bzip2 > pubs.dmp.bz2

Während der Link (Die Syntax ist) oben offensichtlich richtig ist, wie es Dokumentation sybase Punkte, die Kommentare sind irreführend.

Die Syntax in einfachem Format ist:

dump database {database_name} zu "komprimieren :: {#} Komprimierungsstufe :: {stripe_device}" gehen

zB: dump database mydb zu "komprimieren :: 1 :: / sybase_dumps / mydb_17022009"

In Bezug auf das Laden der Datenbank-Dump die :: komprimieren;. Option muss wieder gegeben werden

zB. load database mydb von "compresss :: / sybase_dumps / mydb_17022009"

Beachten Sie die Komprimierungsstufe nicht erforderlich ist Doppelpunkte noch die zusätzliche Trennung, die folgen.

Die Prüfung Balance zu finden, ist ein guter Punkt, remeber je höher man die Deponie gehen erwarten wesentlich länger dauern. Ich finde 1-3 ist mehr als ausreichend, ich habe nie über 6 die abnehmenden Erträge gegangen sind es nicht wert.

Wenn ich desparate war ich würde die Datei bzip2, wie oben beschrieben {Punkt verdient}. Wenn dies ein Produktionswirt ist, würde ich die Datei auf einem anderen Host versenden und dies tut. Ressourcen Treffer kann beträchtlich sein.

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