You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

忘记PostgreSQL用户密码无法连接服务器,Django项目报错求助

重置PostgreSQL用户密码(解决Django连接报错问题)

嘿,别慌,这种忘记PostgreSQL密码的情况我碰到过好多次,给你一步步来解决:

步骤1:停止PostgreSQL服务

首先得把PostgreSQL服务停掉,这样才能修改它的核心配置:

  • Windows:打开管理员权限的命令提示符,执行 net stop postgresql-x64-<你的版本号>(比如net stop postgresql-x64-15,版本号对应你安装的PostgreSQL版本)
  • Linux/macOS:
    • 系统自带的PostgreSQL:sudo systemctl stop postgresql
    • Homebrew安装的(macOS):brew services stop postgresql

步骤2:修改配置文件,临时跳过密码验证

找到pg_hba.conf配置文件,位置根据系统不同有所区别:

  • Windows:C:\Program Files\PostgreSQL\<版本>\data\pg_hba.conf
  • Linux:/var/lib/postgresql/<版本>/main/pg_hba.conf
  • macOS(Homebrew):/usr/local/var/postgres/pg_hba.conf

打开文件后,找到所有以host开头的行,把行尾的md5或者scram-sha-256替换成trust——这样PostgreSQL会暂时允许无密码登录。修改完记得保存文件。

步骤3:重启PostgreSQL服务

重新启动服务,让刚才的配置生效:

  • Windows:net start postgresql-x64-<你的版本号>
  • Linux/macOS:
    • 系统自带:sudo systemctl start postgresql
    • Homebrew:brew services start postgresql

步骤4:登录并重置密码

打开命令行,直接执行 psql -U <你的PostgreSQL用户名>(默认用户名是postgres),这时候不需要输入密码就能进入数据库命令行。

进入后,执行重置密码的SQL命令:

ALTER USER <你的用户名> WITH PASSWORD '你的新密码';

比如重置默认的postgres用户密码:

ALTER USER postgres WITH PASSWORD 'mySecureNewPassword123!';

执行完后,输入 \q 退出psql命令行。

步骤5:恢复配置,重新启用密码验证

这一步非常关键!回到pg_hba.conf文件,把刚才改成trust的地方改回原来的md5或者scram-sha-256,然后再次重启PostgreSQL服务,确保安全验证机制恢复。

步骤6:更新Django配置

最后,打开你的Django项目里的settings.py文件,找到DATABASES配置块,把PASSWORD字段改成你刚设置的新密码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'your_db_name',
        'USER': 'your_db_user',
        'PASSWORD': 'mySecureNewPassword123!',  # 替换为新密码
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

现在可以测试一下,运行python manage.py runserver或者python manage.py migrate,应该就能正常连接数据库,不会再出现密码验证的报错了。

小提醒

  • 务必把pg_hba.conf改回原验证方式,否则你的数据库会暴露无密码登录的安全风险
  • 如果是远程服务器上的PostgreSQL,操作逻辑类似,但要注意服务器权限和防火墙设置

内容的提问来源于stack exchange,提问作者Enrique Vargas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:50:11