在需要自动输密码以连接数据库备份数据时,pg 9和12在读取密码时有区别。
pg 9需要使用如下形式:(不能用pgpass形式,会提示 no password supplied)
pg_dump.exe -Fc -v --dbname=postgresql://username:password@127.0.0.1:5432/dbname -f "D:\filename.backup"
pg 12需要使用如下形式:
pg_dump.exe -h 127.0.0.1 -p 5432 -U username -w -f "D:\filename.backup" dbname
另外需要在上面命令脚本的同级目录建立名为pgpass.conf,内容如下
127.0.0.1:5432:dbname:username:password