django / postgres错误:“数据库XX不存在”

Cheznead

我使用pgAdmin GUI工具创建了一个数据库,用于Django项目的postgres。pgAdmin中只有两个数据库,一个是使用pgAdmin开箱即用的默认“ postgres”数据库,另一个是我的新数据库dbfunk。

我正在使用django,并将postgres添加为数据库,并在设置中提供了必要的信息。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'dbfunk',
        'USER': 'postgres',
        'PASSWORD': 'XXXXXX',
        'HOST': 'localhost'
    }
}

但是当我跑步时

python manage.py makemigrations

它给出了错误,数据库dbfunk不存在,即使它在Django中的settings.py和pgAdmin中都存在。错误的全文是:

django.db.utils.OperationalError: FATAL:  database "dbfunk" does not exist

我已经安装了适配器psycopg2。我也在'ENGINE': 'django.db.backends.postgresql_psycopg2',Settings.py中尝试过,但这没有任何区别。

还有其他我想念的东西吗?

当我运行命令psql \ u时,它也只显示了postgres数据库,而不显示这个新数据库'dbfunk'。

我不知道这是否有帮助,但是在安装postgres时,提示中给我5433作为端口号。

更新:我只是createdb dbfunk从命令行运行,这似乎已经创建了,因为我现在可以运行它python manage.py makemigrations但是,当我已经在pgAdmin中完成此操作后,为什么还要这样做呢?也就是说,为什么我必须创建两次?这是平常的吗?

UPDATE2:遗憾的是,我在命令行中使用createdb从命令行创建的数据库dbfunk和pgAdmin中的dbfunk不同步,迁移也不会继续进行,因此我在pgAdmin中看不到django模型的表。

我最初使用Homebrew和pgAdmin分别安装了Postgres,但是后来它没有在pgAdmin上提供默认的服务器/数据库,因此我删除了pgAdmin,并卸载了Postgres,然后从网站上下载了Postgres,并且似乎在其旁边安装了pgAdmin。因为当我打开pgAdmin时,它具有默认的服务器/数据库postgres。我使用的是macOS 10.14.6。

当我检查5432上的端口时,得到以下信息:

COMMAND    PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
postgres 16337 me    5u  IPv4 0x7560dce8e7fXXXX      0t0  TCP localhost:postgresql (LISTEN)
postgres 16337 me   6u  IPv6 0x7560dce8d2XXXXX      0t0  TCP localhost:postgresql (LISTEN)

在5433上还有更多条目:

COMMAND    PID     USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
postgres 16809 postgres    4u  IPv6 0x7560dce8e883ed93      0t0  TCP *:pyrrho (LISTEN)
postgres 16809 postgres    5u  IPv4 0x7560dce8e46dXXXX      0t0  TCP *:pyrrho (LISTEN)
pgAdmin4 17043   me   20u  IPv4 0x7560dce8e74cXXXx      0t0  TCP localhost:56820->localhost:pyrrho (ESTABLISHED)
pgAdmin4 17043   me   21u  IPv4 0x7560dce8e74cXXXX       0t0  TCP localhost:57054->localhost:pyrrho (ESTABLISHED)
postgres 17051 postgres   12u  IPv4 0x7560dce8e74cXXXX       0t0  TCP localhost:pyrrho->localhost:56820 (ESTABLISHED)
postgres 17217 postgres   12u  IPv4 0x7560dce8e74cXXXX       0t0  TCP localhost:pyrrho->localhost:57054 (ESTABLISHED)
阿德里安·克拉维尔(Adrian Klaver)

对于初学者,您没有PORT 在中指定DATABASESpostgres的默认端口为5432,因此,如果包含dbfunk的数据库集群正在监听端口5433,则Django将找不到该端口。我的猜测是您有两个postgres实例在运行,一个实例在端口5432上,另一个在5433上。当您这样做时,createdb dbfunk我猜您又没有指定端口,并且数据库在集群中创建,监听5432。现在python manage.py makemigrations可以找到使用中的设置DATABASES

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Postgres FATAL数据库不存在Django

来自分类Dev

操作错误:致命:数据库“ django”不存在

来自分类Dev

django.db.utils.OperationalError:致命:数据库不存在(postgres /部署到digitalocean)

来自分类Dev

新鲜的mysql数据库获取“ mydb.background_task不存在”-Django

来自分类Dev

django.db.utils.OperationalError:严重:数据库“路径”不存在

来自分类Dev

如何在石墨烯django中添加数据库中不存在的自定义字段

来自分类Dev

Django + posgtres关系不存在错误

来自分类Dev

模板在 Django 中不存在错误?

来自分类Dev

错误:greenplum数据库上不存在关系

来自分类Dev

数据库错误(如果特定行会不存在)

来自分类Dev

Django视图导致Psycopg2光标不存在/不存在错误

来自分类Dev

Django异常不存在

来自分类Dev

Django的:表不存在

来自分类Dev

Django主键不存在

来自分类Dev

Django模板不存在@

来自分类Dev

Django:关系不存在

来自分类Dev

Django:模板不存在

来自分类Dev

Django迁移错误:该列不存在

来自分类Dev

Django错误:关系“ users_user”不存在

来自分类Dev

添加外键Django时,列不存在错误

来自分类Dev

Django编程错误1146表不存在

来自分类Dev

关系“ account_emailaddress”不存在-Django错误

来自分类Dev

Python Django-内部错误ProgrammingError关系不存在

来自分类Dev

错误:MyUser匹配查询不存在-Django

来自分类Dev

在 Django 中执行原始 sql 错误:关系不存在

来自分类Dev

匹配查询不存在 - Django 搜索错误

来自分类Dev

OperationalError:数据库不存在

来自分类Dev

严重:数据库不存在

来自分类Dev

数据库不存在