1

一度だけ発生しました - pgpool (最新バージョン) は、アプリケーションがスレーブ マシンに書き込むことを許可しました。私が持っている唯一のエラーメッセージは、「読み取り専用トランザクションでUPDATEを実行できません」というもので、postgresログやどこにも何もありません。誰もがこのような問題を抱えていましたか?

4

2 に答える 2

1

これは、SELECT ...ステートメントにデータを変更する関数が含まれているときに発生しました。black_function_listを使用すると修正されました。

于 2013-12-11T08:55:14.957 に答える
0

レプリケーション モード (replication_mode = on) では、SELECT は負荷分散され、PostgreSQL サーバーの 1 つだけがコマンドを受け取ります。解決策は次のとおりです。

1) SELECT の前に「/ REPLICATION /」コメントを追加します。

2) func1 を black_function_list に追加します。

二次的な可能性は、マスターがダウンしている場合、スレーブがマスターとして機能することです。スレーブは読み取り専用に設定されているため、エラーが表示されます

于 2016-05-24T10:16:09.250 に答える