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

配置PostgreSQL与Django连接时遇'my_service'未找到错误

解决Django PostgreSQL服务定义找不到的问题

问题排查与修复步骤

1. 调整pg_service.conf的位置或配置环境变量

PostgreSQL不会自动识别你放在settings.py同级目录的pg_service.conf文件,需要明确指定其位置:

  • Windows系统:设置环境变量 PGSERVICEFILE 指向该文件的绝对路径,示例:
    set PGSERVICEFILE=C:\Users\oliver\base\correlator2v2\correlator2home\pg_service.conf
    
    也可将文件移至默认路径:%APPDATA%\postgresql\pg_service.conf(目录不存在则手动创建)
  • Linux/macOS系统:设置环境变量 PGSERVICEFILE,或直接将文件放到 ~/.pg_service.conf 路径下

2. 统一密码文件名与配置

你的settings.py中指定的passfile是.my_pgpass,但实际创建的文件名为mypg_pass,二者需保持一致:

  • 要么将文件名改为.my_pgpass
  • 要么将settings.py里的passfile值修改为mypg_pass

同时注意pgpass文件的格式:正确格式为hostname:port:database:username:password,你当前写的localhost:5432:PostgreSQL 14:postgres:LetMeIn中,数据库名位置填了版本号,需替换为pg_service.conf里配置的NAME值。

3. 验证连接有效性

修改完成后,先用psql手动测试连接:

psql service=my_service

若能成功连接,再执行python manage.py check即可正常运行。

内容的提问来源于stack exchange,提问作者Mike Oliver

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 01:15:53