2015-06-04 33 views
1

我正在使用Bucardo-5.3.1並試圖複製我的前提下postgreSQL數據庫。我已經使用RDS postgreSQL創建了主 - 主複製。如果RDS數據庫爲空,並且已完成pg_dump,則我能夠成功進行復制,但當我想執行增量複製時會出現問題。 當我嘗試pg_dump -U $PGSUPERUSER -h $PGHOST --data-only -N bucardo $PGDATABASE | PGOPTIONS='-c session_replication_role=replica' psql -U $BUCARDOUSER -h $PGHOST2 -d $PGDATABASEpostgres master master delta複製到RDS通過bucardo

我收到以下錯誤,因爲會話複製是通過RDS

psql: FATAL: permission denied to set parameter "session_replication_role" 

否認我也用下面的命令,以及

bucardo update sync mysync1 onetimecopy=2 

我嘗試使用pg_restore裏也嘗試但它仍然給出ERROR: duplicate key value violates unique constraint

回答

1

bucardo用於從RDS導出,而londiste用於導入到RDS。 This link可能有助於配置londiste。

+3

Plz修復鏈接 – michaelbn

0

會話複製(至少現在)未被RDS拒絕。您的bucardo用戶只是缺乏足夠的權限來設置值。我們通過使用戶Bucardo用來連接到數據庫的「rds_superuser」角色的成員來實現這個工作。

例如,如果您的用戶Bucardo這被命名爲「Bucardo這」,您可以通過運行設置此:

GRANT rds_superuser TO bucardo; 

您將需要連接成與「CREATEROLE」權限的用戶。