如何调用psql以使它不提示输入密码?

这是我所拥有的:

psql -Umyuser < myscript.sql

但是,我找不到传递密码的参数,所以psql总是提示输入这个参数。


当前回答

你必须创建一个密码文件:更多信息请参见http://www.postgresql.org/docs/9.0/interactive/libpq-pgpass.html。

其他回答

你必须创建一个密码文件:更多信息请参见http://www.postgresql.org/docs/9.0/interactive/libpq-pgpass.html。

这也适用于其他postgresql cliis,例如你可以在非交互模式下运行pgbench。

export PGPASSWORD=yourpassword
/usr/pgsql-9.5/bin/pgbench -h $REMOTE_PG_HOST -p 5432 -U postgres -c 12 -j 4 -t 10000 example > pgbench.out 2>&1 &

在命令中使用-w: psql -h localhost -p 5432 -U user -w

你可能会发现这很有用:Windows PSQL命令行:是否有一种方法允许无密码登录?

PGPASSWORD=[your password] psql -Umyuser < myscript.sql