从 python 执行受密码保护的 psql

文诺

我需要在Windows上从 Python 执行以下命令

psql -h localhost -p 5432 -U postgres -f script.sql db_name

从 git bash / powershell 运行时,上述脚本工作正常。在终端中输入脚本后,我需要提供一个密码来确认(类似于使用时sudo)。

我怎样才能做到这一点?我一直在寻找我认为基于 linux 的解决方案。

我如何在 Windows 上执行此操作?我尝试了许多涉及的解决方案变体subprocess,即:

import subprocess

p2 = subprocess.Popen(
    'psql -h localhost -p 5432 -U postgres -f script.sql db_name',
    stdin=subprocess.PIPE,
    stderr=subprocess.PIPE,
    universal_newlines=True)

print('this will print')
sudo_prompt = p2.communicate('THE_PASSWORD' + '\n')[1]
print('this will not')
彼得·D

psql明确提及您的密码进行调用更好的选择(更安全)是拥有一个.pgpass如 docs文件中所述的文件(并对其进行保护,例如chmod 600 ~/.pgpass)。这使您的密码不在正在运行的进程列表中。

在 Windows 上:

在 Microsoft Windows 上,文件被命名%APPDATA%\postgresql\pgpass.conf(其中%APPDATA%指的是用户配置文件中的应用程序数据子目录)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python ZipFile模块缓慢提取受密码保护的zip

Python从受密码保护的pdf获取页面数

Python 的 zipfile 库无法提取受密码保护的文件

使用python从owncloud下载受密码保护的文件

如何使用Python将文件压缩为受密码保护的存档

在Linux上的Python中使用受密码保护的Excel工作表

我可以使用哪些Python工具编写受密码保护的网页的抓取工具?

如何在Python 3中打开受密码保护的zip文件

python bokeh:在受密码保护的仪表板中添加/更改子项时交互丢失。

错误循环通过Python中受密码保护的XLSB和XLSM文件

如何提取使用Python中的PKWARE SecureZip压缩的受密码保护的zip文件?(Windows 10)

使用 python-xlswriter 或 bash 打开受密码保护的 ods 文件

为什么python无法使用zip方法解压缩winrar创建的受密码保护的zip文件?

使用VS Code Python扩展名登录受密码保护的远程Jupyter URI(URI中没有令牌)

是否存在将React.js与Python Flask后端一起用于多用户,受密码保护的网站的安全方法

编辑时受密码保护的脚本,执行时无密码

受密码保护的文件上传

PHPMailer受密码保护的附件

检测受密码保护的单词文件

受密码保护的Excel文件

Android中受密码保护的屏幕

如何刮取受密码保护的网站

与受密码保护的Jupyter / api交互

忽略受密码保护的Excel文件

宏以保存受密码保护的文件

打开受密码保护的演示文稿

如何抓取受密码保护的网站

受密码保护的域名glassfish

PSQL:无法输入密码