Streaming Replication mit Postgres 9 über Windows

Hallo

Wir haben unser Datenbanksystem auf Postgres umgestellt.Nun such ich nach einer Lösung, die daten auf einen zweiten Server zu sichern.
Hab gelesen das das ganze mit der Streaming Replication gehen soll. Die meisten Anleitungen sind für Linux. Das Mastersystem habe ich jetzt konfiguriert.Es kopiert die WAL Files in einen extra Ordner. Leider weis ich nicht wie man den Standby konfiguriert.Eine recovery.conf habe ioch schon erzeut. Nur leider weis ich nicht genau was dort alles rein soll?
Hat jemand Erfahrung mit Streaming Replication?Suche eine einfache Anleitung für Postgres 9 für Windows.

Let me google that for you

erster Treffer.


Andreas

Nachtrag:

Was genau willst Du erreichen? Eine Sicherung im Sinne eines Backups, so daß Du z.B. bei einem versehentlichen Löschen von Daten diese wiederherstellen kannst? Falls ja: dann ist Streaming Replication für Dich die falsche Baustelle, dann suchst Du PITR (Point In Time Recovery).

Die Doku, insbesondere das Kapitel Backup/Restore, hast Du ja sicher schon gefunden, oder?


Andreas

Ich möchte alle Daten Parallel auf einen Zweiten Server haben als Datensicherung bzw. als Ersatz falls der Hauptserver ausfällt.
Anleitungenn gibt es genug.Diese beziehen sich aber meist auf Linux. Ich habe es schon geschafft,das der Server die Daten in eine WAL Datei schreibt. Aber wie ich die gesicherte WAL Datei in den Slave übertragen soll und wie ich Postgres zum slave machen soll,das hat bisher nicht funktioniert.(nach den Anleitungen) habe eine recovery.conf erstellt u.s.w.
Muss auf dem Slave die Datenbank schon erzeugt sein oder wird das aus der WAL Datei automatisch erzeugt beim einspielen? Ich suche nur eine Anleitung,wie man das genu macht.
Was für Einträge in den Einzelnen Dateien wirklich seinen müssen und was nicht.

Genau. Aber was hindert Dich, diese zu lesen?

Diese beziehen sich aber meist auf Linux.

Das OS ist irrelevant. Maximal beim archive_command. Und ein DOS-Gegenstück zu cp zu finden sollte ja nicht so dolle schwer sein.

Ich habe es schon geschafft,das der Server die Daten in eine WAL Datei schreibt.

Ja, toll. Er schreibt aber nicht nur eine, sondern fortlaufend. Und das muß man nicht konfigurieren, daß macht er eh. Egal.

Aber wie ich die gesicherte WAL Datei in den Slave übertragen soll und wie ich Postgres zum slave machen soll,das hat bisher nicht funktioniert.(nach den Anleitungen) habe eine recovery.conf erstellt u.s.w.

‘Nicht funktioniert’ ist keine Fehlerbeschreibung.

Muss auf dem Slave die Datenbank schon erzeugt sein oder wird das aus der WAL Datei automatisch erzeugt beim einspielen? Ich suche nur eine Anleitung,wie man das genu macht.
Was für Einträge in den Einzelnen Dateien wirklich seinen müssen und was nicht.

Was genau hast Du an den Anleitungen, die ich Dir schon nannte, denn nicht verstanden?


Andreas

Mein Problem ist es den Standby/Slave zu konfigurieren bzw. ihn zu starten.
recovery.conf
standby_mode = on
restore_command = copy “D:/WAL/%f”
primary_conninfo =host=192.168.0.5 port=5432 user=postgres

postgresql.conf
hot_standby = on
archive_mode = off
archive_command = ‘’

Den Master habe ich konfiguriert mit dem Copy Befehl.Er sichert die WAL Files ohne Probleme weck.
Im Standby bekomm ich im log folgensen Fehler.

2011-06-27 08:34:17 CEST LOG: Datenbanksystem wurde am 2011-06-24 11:20:33 CEST heruntergefahren
2011-06-27 08:34:17 CEST FATAL: Syntaxfehler in Recovery-Kommandodatei: standby_mode = on


2011-06-27 08:34:17 CEST TIPP: Die Zeilen müssen das Format parameter = ‘wert’ haben.
2011-06-27 08:34:17 CEST LOG: Startprozess (PID 2508) beendete mit Status 1
2011-06-27 08:34:17 CEST LOG: Serverstart abgebrochen wegen Startprozessfehler

Hab dazu nichts gefunden.

Die Syntax für conn_info ist schon mal falsch, und setz bei standy_mode das on in ‘’, also

standby_mode='on'
primary_conninfo='host=ip.zum.pg.server port=5432 user=replica password=xyz123'
trigger_file='/tmp/pg_trigger'

Andreas

Öhm, der Fehler ist ziemlich selbsterklärend, oder?

Mal eine ganz komische Frage: versucht ihr da ein Produktionssystem ohne entsprechendes Know-How zu betreiben?
Oder testet ihr das nur zum Spaß?

Hey, sie nutzen Windows. Das beantwortet Deine Frage zuverlässig…

Andreas

Das ist erst mal nur ein Test.Ich habe mit Postgres noch nicht all zu viel gemacht.Wie sollte sowas aussehen,wenn man ein Produktionssystem damit betreiben soll?

Kommt drauf an, wie wichtig Euch die Daten sind. Euch scheint aber doch einiges an Grundlagenwissen zu fehlen, da solltet ihr dran arbeiten. Bücher gibt es ja einige, auch in deutsch und auch in aktuell. Es gibt natürlich auch Firmen, die Euch vor Ort helfen können. Oder Hoster, denen man das übergibt …

Andreas

Das sollte so aussehen, das sich da jemand mit Erfahrung im Datenbankbereich darum kümmert.
Egal ob das Windows oder Unix ist.

Wenn etwas kaputt ist, möchtest du es schnell repariert haben.
Außerdem möchtest du sicher sein, das du nicht irgendetwas wichtiges übersehen hast, was dir später z. B. Datenverluste oder Einbrüche in die Datenbank beschert.

Danke für euere Meinungen.Werd mich erst mal weiter belesen.Scheint doch nicht so einfach zu sein.