前提・実現したいこと
Postgresのロジカルレプリケーションを使用したテーブルAとBの同期をしたい
データベースの構成は下記のようにしたいです。
-------データベースA-------
スキーマA スキーマB
テーブルA テーブルB
テーブルAに対して行の登録・更新・削除が行われコミットされたとき、
テーブルBに登録・更新・削除内容が反映されること。
例:スキーマAにあるテーブルAのカラムa、カラムbにUPDATE処理されたとき、スキーマBのカラムa、カラムbのみ反映される。
・テーブルA
カラムa カラムb カラムc
・テーブルB(カラムd以外のカラムの定義情報は同じ)
カラムa カラムb カラムc カラムd
今回やりたいことに対して別のやり方をご存じでしたらご教授おねがいします。
発生している問題・エラーメッセージ
サブスクリプション(受信側)オブジェクトのCREATE文実行が完了しない(エラーも出力されないので原因が不明)。
CREATE文(一部情報はで伏せてます)
CREATE SUBSCRIPTION Test CONNECTION 'host=...* port=**** user=testuser dbname=testdb connect_timeout=10' PUBLICATION testa;
該当のソースコード
・Postgres.conf
wal_level = logical
・pg_hba.conf(一部情報はで伏せてます)
TYPE DATABASE USER ADDRESS METHOD
host all all ...*/24 trust
試したこと
パブリケーション(送信側)のオブジェクトの作成はできており、
サブスクリプション(受信側)オブジェクト作成時の「PUBLICATION 」はパブリケーションのオブジェクトを指定。
補足情報(FW/ツールのバージョンなど)
Postgresのバージョン:Postgres11.5
あなたの回答
tips
プレビュー