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
}
}