gpt4 book ai didi

python - 尽管在 .pgpass 中找到了 Postgresql 提示从命令行输入密码

转载 作者:行者123 更新时间:2023-11-29 13:59:47 24 4
gpt4 key购买 nike

我正在尝试从 python 脚本中远程连接到 psql 服务器。尽管我已经正确设置了 .pgpass,但当我运行脚本时,远程服务器会提示输入密码,在这种情况下,按回车键将导致它成功地从 .pgpass 中读取密码。

因为我打算设置一个运行这个脚本的 cron 作业,所以我想避免密码提示。这里的大多数搜索都说设置 PGPASS 或 PGPASSFILE 会消除密码提示,但在我的情况下不会。

我知道我可以使用 ORM 库进行连接,但这会有点矫枉过正,因为这个查询是一个永远不会改变的单行查询。

关于如何摆脱密码提示的任何想法?

os.environ["PGPASSFILE"]=".pgpass"
dest=os.path.dirname(os.path.abspath(__file__))
#get the newest data from the table
subprocess.call("psql -U username --no-password -h host.address -W mydatabasename -c '\copy (select ....) To '%s/latest.csv' With CSV'"%dest,shell=True)

最佳答案

解决了问题,查询中的 -W 修饰符强制 psql 提示输入密码,删除 -W 并且它工作正常。

关于python - 尽管在 .pgpass 中找到了 Postgresql 提示从命令行输入密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22942737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com