如果您對權限和對非登錄角色(a.k.a.組)的所有權非常簡化您的任務。我們將其命名爲foo_admin
。在Server1上你
GRANT foo_admin TO pguser1;
Server2上你
REVOKE foo_admin FROM pguser1;
GRANT foo_admin TO pguser2;
全部完成。或者更好的是:破解轉儲文件,並在該行
GRANT foo_admin TO pguser1;
取代1
與2
..你恢復之前。當然,必須首先創建pguser2
。
現在,只要確保,當您創建Server1上什麼
ALTER TABLE wuchtel12.game OWNER TO foo_admin;
並設置權限。您可以爲每個模式預設權限。例如:
ALTER DEFAULT PRIVILEGES IN SCHEMA schema1
GRANT INSERT, SELECT, UPDATE, DELETE, TRUNCATE, REFERENCES, TRIGGER ON TABLES
TO foo_admin;
ALTER DEFAULT PRIVILEGES IN SCHEMA schema1
GRANT SELECT, UPDATE, USAGE ON SEQUENCES
TO foo_admin;
這在服務器1和服務器2上的工作原理完全相同。
More details and links in this related answer。
您可能也有興趣在Grant Wizard of pgAdmin。詳細信息this related answer