【问题标题】:OperationalError: (psycopg2.OperationalError) FATAL: password authentication failed for userOperationalError: (psycopg2.OperationalError) FATAL: 用户密码验证失败
【发布时间】:2016-06-24 07:43:31
【问题描述】:

我对 python 和 postgresql 比较陌生。我继承了一些使用 psycopg2 和 sqlalchemy 构建 postgresql 数据库的代码(python)。

数据库名为'tetradev',用户为'tetra'

除此之外,还有一个基于浏览器的应用程序,通过烧瓶运行,它查询数据库以在地图上加载信息。

我最近更改了用户 'tetra' 的密码,现在我得到了一个

"Internal Server Error 服务器遇到内部错误并且 无法完成您的请求。要么服务器超载 或者应用程序有错误”

在网址上。

通过托管这一切的服务器,我得到了一个

"OperationalError: (psycopg2.OperationalError) FATAL: 密码 用户身份验证失败 " 错误。

但是,通过终端,我通过用户'tetra' 直接连接到'tetradev' 没有问题。

关于如何解决这个问题的任何想法?

编辑

以下是配置文件中的设置。

db_NAME = os.getenv(‘db_NAME', ‘tetradev')
db_USER = os.getenv(‘db_USER', ’tetra’)
db_PASSWD = os.getenv(‘db_PASSWD', 'default')
db_HOST = os.getenv(‘db_HOST', ‘xxx.xx.xxx.xx’)
db_PORT = os.getenv(‘db_PORT', 5432)

【问题讨论】:

  • 你在烧瓶配置上修改密码了吗?
  • 不,我没有。我想过这样做,但密码设置为“默认”,我真的不明白这是什么意思。
  • 为了进一步澄清,用户 'tetra' 在我更改之前设置了密码,但在配置文件中,密码 = 'default' 而不是实际密码。
  • 嗯,必须在某个地方设置通行证,也许在那之后,但是如果没有您的配置详细信息,很难为您提供帮助。

标签: python postgresql flask


【解决方案1】:

终于想通了。我确实最终将配置文件更新为正确的密码,但它仍然无法正常工作。

我后来了解到,环境变量的设置覆盖了配置文件(这都是通过云服务托管的)。我在那里更新了密码,现在 URL 可以工作了。

经验教训,更改用户名或密码时要小心。

【讨论】:

    猜你喜欢
    • 2018-08-06
    • 2021-08-04
    • 2020-05-04
    • 2017-09-25
    • 1970-01-01
    • 2018-06-07
    • 1970-01-01
    • 2014-04-23
    • 1970-01-01
    相关资源
    最近更新 更多