Bom dia,
Quando executo o dump da base para determinado usuário, não superuser mas
com acesso completo a todos os objetos da base, o mesmo me retorna o erro:
pg_dump: erro ao ler objeto grande 25543: ERRO:  permissão negada para
objeto grande 25543

Cenário:
S.O: Windows 8 x64;
PostgreSQL: 9.2.4 x86;

Comando de backup:
pg_dump -U usuario -v -Ft -b base_foo > c:\base_foo.tar

Também tentei sem o "-b", mas ocorre o mesmo erro.

Comando para adicionar permissão ao usuário "usuario" aos objetos da base
de dados:

SELECT pg_grant('usuario', 'SELECT, INSERT, UPDATE, DELETE', '%', 'public');

Função pg_grant:

CREATE OR REPLACE FUNCTION pg_grant(usuario text, permissoes text, objetos
text, esquema text)
  RETURNS integer AS
$$
DECLARE obj record;
num integer;
BEGIN
num:=0;
FOR obj IN SELECT relname FROM pg_class c JOIN pg_namespace ns ON
(c.relnamespace = ns.oid) WHERE relkind in ('r','v','S') AND nspname =
Esquema AND relname LIKE Objetos
LOOP
EXECUTE 'GRANT ' || Permissoes || ' ON ' || obj.relname || ' TO ' ||
Usuario;
num := num + 1;
END LOOP;
RETURN num;
END;
$$
  LANGUAGE plpgsql;

Privilégios do usuário "usuario" NOSUPERUSER INHERIT NOCREATEDB
NOCREATEROLE;

Obs:
Este problema ocorre somente na versão 9.2.x em em determinadas bases de
dados;
Executei um VACUUM FULL VERBOSE ANALYZE e REINDEX DATABASE base_foo e o
problema pesrsiste;

Alguma dica?


-- 

Zeus Automação Comercial*
*ADENILTON Batista da Silva
Fones:(79)3431-6392/3431-8381
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Reply via email to