Fazendo backup do PostgreSQL - sendo solicitado a senha

1

SO: Ubuntu Xenial 16.04 LTS

Versão do PostgreSQL: 9.5.4

Estou tentando configurar backups de banco de dados automáticos no meu servidor e, toda vez que executo pg_dump , ele informa que nenhuma senha foi fornecida. Aqui está o comando que estou usando para testar:

pg_dump --host $DB_HOST --port 5432 --username $DB_USER --no-password  --format custom --blobs --verbose --file ~/backups/postgresql/test.backup $DB_NAME

Todas as minhas variáveis de ambiente estão funcionando bem. Para fornecer a senha ao PostgreSQL, criei um arquivo .pgpass em ~/.pgpass . Aqui está o que parece:

# hostname:port:database:username:password $DB_HOST:5432:$DB_NAME:$DB_USER:$DB_PASS

O arquivo tem 0600 permissões, conforme especificado no guia . Ainda, por alguma razão, não está usando a senha sempre que eu corro pg_dump . Eu olhei para outras respostas e vários guias on-line, mas ainda não consigo descobrir qual é o problema.

Qualquer ajuda seria muito apreciada.

    
por Alexander 10.10.2016 / 23:32

1 resposta

1

Você precisa ter valores literais em ~/.pgpass , não variáveis de shell como $DB_HOST .

Se você precisar de variáveis de ambiente, poderá usá-las suportadas pela libpq (biblioteca cliente do PostgreSQL) como $PGDATABASE ou $PGPASSWORD . Existem muitos outros . Você não precisará de ~/.pgpass se você usá-los.

    
por 11.10.2016 / 20:15