我正在运行PostgreSQL 9.3.1。我有test
数据库和backup
用户,用于备份数据库。我对授予所有当前表的权限没有任何问题,但每次将新表添加到模式时我都必须授予权限。
createdb test
psql test
test=# create table foo();
CREATE TABLE
test=# grant all on all tables in schema public to backup;
GRANT
test=# create table bar();
CREATE TABLE
psql -U backup test
test=> select * from foo;
test=> select * from bar;
ERROR: permission denied for relation bar
是否可以授予对将来创建的表的访问权限,而无需创建表的用户所有者?
答案 0 :(得分:29)
看起来解决方案是更改backup
用户的默认权限:
alter default privileges in schema public grant all on tables to backup;
alter default privileges in schema public grant all on sequences to backup;