2017-09-26 6 views

Antwort

1

ich dies mit Bucardo tun. diese Check-out: https://bucardo.org/Bucardo/

Mit Bucardo können Sie RDS Postgres Instanz replizieren zu einem Slave vorhanden irgendwo postgres, nur Slave-Konfiguration, also ohne die Bedürfnisse RDS Sachen zu konfigurieren. Sie können dies auch ohne Ausfallzeiten tun.

Ich bin mir nicht sicher, ob das mit verschiedenen Versionen von Postgresql funktioniert. Sie sollten die gleiche Version verwenden, wenn möglich. Ich habe es mit 9.4.x getestet und es funktioniert.

UPDATE

Ich kann bestätigen, dass dies auch andere Version von Postgres, zum Beispiel unter Verwendung arbeitet ich in der Lage war, mit diesen Versionen zu replizieren:

  • AWS RDS postgresql 9.4.x
  • On-Premise Postgresql 9.6.x
+0

Hallo @diego: Ich habe Replikation mit Bucardo eingerichtet. Aber manchmal bleibt es hängen. Wenn ich den Bucardo-Status überprüfe, heißt es ** Gut **, aber die Daten werden nicht repliziert. Haben Sie eine Idee zu diesem Thema? – WannaBeSQLExpert

+0

Hallo @ WannaBeSQLExpert, das Hauptproblem bei der Verwendung von Bucardo für die Replikation ist, dass, wenn sich das Schema der Master-Datenbank ändert, die Synchronisierung hängen bleibt und Sie sie manuell neu erstellen müssen. Dies ist ein Schmerz und für uns ist der einzige Grund, dass die Synchronisierung fehlschlägt. In Bezug auf Bucardo Status Befehl, überprüfen Sie immer * Letzte gute * Spalte, um zu sehen, ob es einen Zeitstempel zeigt, der fast der tatsächlichen/aktuellen Zeit entspricht. Wenn ja, dann sollte die Replikation funktionieren. –

0

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.FeatureSupport.LogicalReplication

Beginnend mit PostgreSQL Version 9.4 unterstützt PostgreSQL die Streaming von WAL ändert logische Replikation Slots verwenden. Amazon RDS unterstützt die logische Replikation für eine PostgreSQL-DB-Instanzversion 9.4.9 und höher und 9.5.4 und höher. Mithilfe der logischen Replikation können Sie logische Replikationssteckplätze für Ihre Instanz einrichten und die Datenbankänderungen über diese Steckplätze in einen Client wie pg_recvlogical streamen. Logische Slots werden auf Datenbankebene erstellt und unterstützen Replikationsverbindungen zu einer einzelnen Datenbank.

Geist mögliche Probleme zB https://dba.stackexchange.com/questions/173267/aws-rds-postgres-logical-replication

Verwandte Themen