shell 通过NIFI使用密码执行postgres SQL脚本

v1uwarro  于 2022-12-27  发布在  Shell
关注(0)|答案(1)|浏览(269)

在NIFI流中,我想在PostgreSQL数据库中运行**.sql文件。
所以我创建了一个shell脚本文件,如下所示,并使用
ExecuteStreamCommand**处理器执行它。

#!/bin/bash
psql -d dbName -U user -W  -f file.sql

我担心的是,当我们通过终端执行psql -d dbName -U user -W -f file.sql时,它会要求输入psql密码,如下所示
另外,我尝试了PGPASSWORD=mypw psql -d dbName -U user -W -f file.sql,但它也要求输入密码

我尝试通过shell脚本将密码作为参数传递,但不起作用
由于我对shell脚本有一点经验,我不知道如何通过shell脚本或任何其他方式提供密码。
你能在这方面给我点建议吗?

s5a0g9ez

s5a0g9ez1#

The answer to this question has been give on dba.stackexchange.com:
How to use psql with no password prompt?
此外,仅为psql指定真正需要的参数。有关参数的概述,请使用psql -?(请参见:https://www.postgresql.org/docs/current/app-psql.html
在本例中,选项-W确保始终询问密码。

相关问题