django.db.utils.OperationalError:fe_sendauth:未提供密码

django.db.utils.OperationalError:fe_sendauth:未提供密码,django,git,postgresql,operationalerror,Django,Git,Postgresql,Operationalerror,我已经从github克隆了一个回购协议,并正在进行这项工作。该项目位于django,使用postgres作为数据库。这个项目现在是在生产方面,我需要做一些改变。数据库规格为: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', # Or path to database file if using sqlite3. 'NAME': 'p

我已经从github克隆了一个回购协议,并正在进行这项工作。该项目位于django,使用postgres作为数据库。这个项目现在是在生产方面,我需要做一些改变。数据库规格为:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        # Or path to database file if using sqlite3.
        'NAME': 'project_name',
        'USER': 'admin',
        'PASSWORD': '',
        # Empty for localhost through domain sockets or           '127.0.0.1'
        # for localhost through TCP.
        'HOST': 'localhost',
        'PORT': '5432',
    }
}
我想在本地主机上运行此操作,但无法运行。我得到一个错误:

django.db.utils.OperationalError: fe_sendauth: no password supplied

我已经搜索了这个问题,但找不到一个可以帮助我的解决方案。有人能告诉我问题出在哪里吗?

如果要使用本地无密码连接,则需要删除“主机”、“端口”和“密码”值


通过此配置,您的连接器将尝试使用unix域套接字进行连接,这是Postgres默认情况下唯一允许的无密码连接

首先,如果数据库没有密码,请删除
密码
键。例如:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'project_name',
        'USER': 'admin',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}
第二个,如果数据库有密码,请在
密码
键中提供密码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'project_name',
        'USER': 'admin',
        'PASSWORD': '<YOUR PASSWORD HERE...>',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}
数据库={
“默认值”:{
“引擎”:“django.db.backends.postgresql_psycopg2”,
“名称”:“项目名称”,
“用户”:“管理员”,
“密码”:“,
'主机':'本地主机',
“端口”:“5432”,
}
}

也许是件蠢事。但对我来说,问题是博士后并没有真正参加比赛。所以一定要检查它是否在运行

在Linux中:

sudo service postgresql status

您是否已使用项目名称和“admin”用户创建了数据库。您确定不需要密码吗?是的,我尝试在PgAdminIII中创建数据库,但也出现了相同的错误。您的数据库似乎有问题。为什么不在终端
psql-U postgres
中尝试以下命令,后跟
create database project\U name。如果成功了,请将设置中的用户更改为postgres是否最终成功?尝试将日志更改为postgres而不是Admin我应该在哪里执行?在您的settings.py中,尝试“user”:“postgres”在查看
settings.py
'PASSWORD':os.getenv('DATABASE\u PASSWORD'),
)之后,这对我来说很接近了我意识到我没有激活这个新外壳中的环境变量。