Django から PostgreSQL への接続:「ピア認証に失敗しました」質問する

Django から PostgreSQL への接続:「ピア認証に失敗しました」質問する
OperationalError at /admin/

FATAL:  Peer authentication failed for user "myuser"

これは、Django 管理サイトにアクセスしようとしたときに表示されたエラーです。これまでは、MySQL データベースを問題なく使用していました。PostgreSQL は初めてですが、このプロジェクトで最終的に使用予定のホストに MySQL がないため、切り替えることにしました。

したがって、PostgreSQL のインストールプロセスを実行し、を実行してsyncdb準備完了になると考えました。

問題は、アプリをデータベースに接続できないことです。コマンドラインまたはダウンロードしたデスクトップ アプリ経由で PostgreSQL にログインできます。ただし、スクリプトではログインできません。

manage.py shellまた、 DBへのアクセスにも問題なく使用できます。

何かご意見は?

ベストアンサー1

例外を覗いてみると、接続設定に関係していることがわかりました。設定.py、ホスト設定がないことに気づきました。追加しlocalhostて完了です。

私の settings.py には MySQL データベース用の HOST がありませんでしたが、PostgreSQL を動作させるために HOST を追加する必要がありました。

私の場合はlocalhost設定を追加したらHOSTうまくいきました。

DATABASES以下は私の からのセクションですsettings.py

DATABASES = { 
    'default': { 
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': '<MYDATABASE>', 
        'USER': '<MYUSER>', 
        'PASSWORD': '<MYPASSWORD>', 
        'HOST': 'localhost', # the missing piece of the puzzle 
        'PORT': '', # optional, I don't need this since I'm using the standard port
    } 
}

おすすめ記事