0

1つのopenSUSEPC(マスターノード)から別のOpenSUSE PC(スレーブノード)に3つのテーブルを複製するようにslonyを設定しました。最初はうまくいきます。数日間実行した後、突然-のエラーメッセージが表示されます。

エラー:Slony-I:テーブルeuprofilesが複製され、サブスクライバノードで変更できません-role = 0

euprofilesは、slonyによって複製されているテーブルの1つです。

スレーブノードのテーブルに書き込もうとすると、このメッセージが表示される可能性があることを知っています。しかし、ここではマスターノードにのみ書き込んでいます。

誰かが同様の問題を見ていますか?

4

1 に答える 1

1

これが起こったことはありません。接続していると思われるデータベースに接続していると確信していますか? Slony はセットアップなどが少し難しいかもしれませんが、マスターがスレーブになるとランダムに決定するだけではありません。

2 つのデータベースに psql を実行し、それぞれで \d euprofiles を実行すると、何と表示されますか? ソース テーブルの末尾は次のようになります。

トリガー: _slony_www_logtrigger_228 AFTER INSERT OR DELETE OR UPDATE ON users FOR EACH ROW EXECUTE PROCEDURE _slony_www.logtrigger('_slony_www', '228', 'kvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv')

宛先テーブルには次のようなものが必要です。

トリガー: _slony_www_denyaccess_228 BEFORE INSERT OR DELETE OR UPDATE FOR EACH ROW EXECUTE PROCEDURE _slony_www.denyaccess('_slony_www')

どちらもこの最後のトリガーのように見える場合は、何らかの問題があります。しかし、間違ったサーバーに接続しているだけだと思います。それがとても簡単であることを願いましょう。

于 2011-06-23T03:56:19.000 に答える