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

AWS服务器上Django与PostgreSQL连接失败问题求助

问题描述

我在Amazon AWS测试服务器上搭建基于PostgreSQL的Django环境,操作步骤如下:

  • 系统更新与依赖安装:
    $ sudo apt update
    $ sudo apt install python3-pip python3-dev libpq-dev postgresql postgresql-contrib 
    
  • 拉取代码、创建虚拟环境并安装psycopg2:
    $ pip install psycopg2
    
  • PostgreSQL配置:
    $ sudo -i -u postgres
    $ psql
    $ createuser --interactive (super user);
    $ createdb Filme;
    

PostgreSQL服务状态正常,版本14的main集群在5432端口运行。项目settings.py中数据库配置如下:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'Filme',
        }
}

执行$ python3 manage.py migrate时出现错误:

psycopg2.OperationalError: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL:  role "ubuntu" does not exist

参照DigitalOcean教程操作后仍遇到同类错误。

解决方案

错误根源是Django默认使用当前系统用户(此处为ubuntu)尝试连接PostgreSQL,但PostgreSQL中未创建该名称的数据库角色。以下两种方式可解决问题:

方式一:创建匹配系统用户的PostgreSQL角色

  1. 切换到postgres系统用户:
    sudo -i -u postgres
    
  2. 创建ubuntu角色并赋予超级权限(同时设置密码):
    createuser ubuntu -s -P
    
    (-s代表超级用户权限,-P会触发密码设置提示)
  3. 退出postgres用户:
    exit
    
  4. 更新Django配置文件settings.py,补充数据库连接信息:
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.postgresql_psycopg2',
            'NAME': 'Filme',
            'USER': 'ubuntu',
            'PASSWORD': '你设置的密码',
            'HOST': 'localhost',
            'PORT': '5432',
        }
    }
    
  5. 重新执行迁移命令:
    python3 manage.py migrate
    

方式二:指定已创建的PostgreSQL超级用户

如果之前通过createuser --interactive创建了其他超级用户(比如myadmin),直接在settings.py中指定该用户信息:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'Filme',
        'USER': '你的超级用户名',
        'PASSWORD': '该用户的密码',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

完成配置后重新执行迁移命令即可。

额外注意事项

  • 超级用户权限的数据库角色默认对Filme数据库拥有读写权限,无需额外配置。
  • 执行pip install和migrate命令前,确保已激活项目对应的Python虚拟环境。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 13:41:13