PostgreSQL - Wie man eine sehr große Datenbank wiederherstellt

8

Ich habe ein kleines Problem, wenn ich versuche, eine große Datenbank (fast 32Go im benutzerdefinierten Format) auf meinem Datenbankknoten devel wiederherzustellen (dieser Knoten hat weniger RAM, CPU ... als mein Produktionsserver).

Meine Datenbankabbilder werden mit einem Befehl ähnlich dem folgenden erstellt:

%Vor%

Und wenn ich es wiederherstelle, habe ich den folgenden Befehl verwendet:

%Vor%

Aber hier, jedes Mal, wenn der Wiederherstellungsbefehl mit einem Fehler wie folgt fehlschlug:

%Vor%

Und wenn ich meine Postgresql-Protokolle überprüfe, kann ich folgendes lesen:

%Vor%

Es ist ziemlich seltsam, mein Postgresql-Server "startet" allein wegen meiner Wiederherstellung neu. Ich versuche die Anzahl der Jobs zu minimieren ( -j 5 Option), habe aber immer noch das selbe Problem. Auf einem Knoten mit besseren Spezifikationen habe ich jedoch kein Problem, diese Datenbank wiederherzustellen. Ich bin mir nicht sicher, aber vielleicht könnte die Aktualisierung meiner Indizes (einer davon ist wirklich zu groß) ein Hinweis sein, um dieses Problem zu verstehen?

Ich habe also einige Fragen: Gibt es eine bessere Möglichkeit, eine wirklich große Datenbank wiederherzustellen? Verpasse ich etwas in meinem pg_restore-Befehl? Vielleicht sind die Einstellungen meines devel Servers zu niedrig?

Jeder Hinweis wird sehr geschätzt. Vielen Dank im Voraus.

env: PostgreSQL 9.1 (installiert über Debian-Pakete)

    
Labynocle 02.04.2013, 13:37
quelle

1 Antwort

11

Für diese Art großer Arbeit empfiehlt es sich, autovacuum (während der Wiederherstellung auf off in Ihrer postgresql.conf ) zu deaktivieren.

Es scheint, dass es endlich für mich funktioniert.

    
Labynocle 12.04.2013, 08:56
quelle