簡體   English   中英

將 Django 連接到 Postgres:django.db.utils.OperationalError:致命:數據庫“DATABASENAME”不存在

[英]Connecting Django to Postgres: django.db.utils.OperationalError: FATAL: database "DATABASENAME" does not exist

在我學習了一些 Python 教程后,我才剛剛開始學習 Django。

我正在嘗試將我的 POSTGRES 數據庫連接到我剛剛創建的 Django 項目。

但是,我遇到了這個問題:

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

我按照以下步驟操作:

1) 通過單擊其圖標打開 postgress

2)點擊數據庫“postgress”。 終端打開,我寫道: CREATE DATABASE producthuntdb ; 數據庫已經創建,因為如果我通過它的圖標打開 postgress,我就會看到它。

3)在“設置”中進入我的Django項目並將SQLITE數據庫更改為以下內容:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'producthuntdb',
        'USER': 'mymac2017',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

4)運行代碼python3 manage.py migrate

但是,我收到錯誤:

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

所以我做了以下事情:

  • 單擊 postgress 圖標並打開數據庫producthuntdb

  • 終端打開后,我寫道: \\du

  • 有兩個用戶具有以下屬性:

    1) mymac2017 | 超級用戶、創建角色、創建數據庫 | {}

    2)postgres | 超級用戶、創建角色、創建數據庫、復制、繞過 RLS | {}

我究竟做錯了什么?

我試圖尋找這個問題的其他答案,大多數問題來自拼錯數據庫名稱或沒有創建它。 但是,我的數據庫名稱是正確的,如果我打開 postgres,我可以看到數據庫producthuntdb

非常感謝您的幫助。

我在 Django“settings.py”中設置了錯誤的數據庫端口。

我使用'PORT': '5432''PORT': '5432'而不是'PORT': '5433'

解決方案:

  • 轉到您的 Postgres 應用程序/圖標/程序
  • 單擊“服務器設置”並查看數據庫 POSTGRES 使用的端口
  • 確保數據庫使用的端口與您在 Django 項目的“settings.py”中編寫的端口相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM