非交互方式指定psql,pg_dump密码

psql 和 pg_dump 等工具连接PostgreSQL数据库时,通过-W参数,在终端以交互方式输入密码,很多时候,我们希望使用脚本调用psql或者pg_dump做一些自动化的操作,那么此时如何以非交互方式指定密码?

方法一,环境变量

设置环境变量PGPASSWORD,psql 和 pg_dump 等工具会自动读取环境变量PGPASSWORD的值作为连接密码。

示例:

export PGPASSWORD=123456 psql -h 127.0.0.1 -U admin -p 5432 db