Postgres密码少连接不能从shell脚本工作



我已经在.pgpass文件中设置了所需的条目,文件权限设置为0600。

我能够连接到db形式shell命令行不给密码。

但是当我运行内部查询postgres的shell脚本时,它要求输入密码。

我不知道哪里出了问题。

下面是一个示例shell脚本:
#!/bin/bash
source $1
psql -h $DBHOST -d $DBNAME -U $DBUSER << EOF
        select * from students limit 10;
EOF
DBHOST, DBNAME和DBUSER的所有值都正常

没关系。

我犯了一个愚蠢的错误。我在windows上编辑了配置文件。所以它在每行的末尾添加了crlf。因此,即使它不可见,当连接到postgres时,它被使用。

在命令行中这工作。

psql -h 192.168.1.45 -d somedbname -U $somedbuse

但是这个没有。(源配置文件后)

psql -h $DBHOST -d $DBNAME -U $DBUSER

最新更新