PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como faço para especificar uma senha para 'psql' não interativamente?


Defina a variável de ambiente PGPASSWORD dentro do script antes de chamar o psql
PGPASSWORD=pass1234 psql -U MyUsername myDatabaseName

Para referência, consulte http://www.postgresql.org/docs/current/static/libpq-envars.html

Editar

Desde o Postgres 9.2, há também a opção de especificar uma string de conexão ou URI que pode conter o nome de usuário e senha. Sintaxe é:
$ psql postgresql://[user[:password]@][host][:port][,...][/dbname][?param1=value1&...]

Usar isso é um risco de segurança porque a senha é visível em texto simples ao olhar para a linha de comando de um processo em execução, por exemplo, usando ps (Linux), ProcessExplorer (Windows) ou ferramentas semelhantes, por outros usuários.

Veja também esta pergunta em Administradores de Banco de Dados