質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

PyCharm

エディター・開発ツール

Q&A

解決済

1回答

2771閲覧

password authentication failed for userを解決してスーパーユーザーを作成したい

yohida19

総合スコア52

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

PyCharm

エディター・開発ツール

0グッド

0クリップ

投稿2022/05/22 14:20

前提

動かして学ぶ!Python Django開発入門を参考に、DjangoでWebアプリを作成しています。
コマンドプロンプトで仮想環境のmanage.pyがあるディレクトリまで移動しています。

実現したいこと

python manage.py createsuperuser --settings <指定のプロジェクト設定ファイル>
を実行してスーパーユーザーを作成したいです。

発生している問題・エラーメッセージ

「no passward supplied」エラーとなったので、
set DB_USER=testuser
ser DB_PASSWORD=pswd
を実行したところ、以下のエラーとなりました。

django.db.utils.OperationalError: connection to server at "127.0.0.1", port 5432 failed: FATAL: password authentication failed for user "testuser"

試したこと

・setting_common.pyのDATABASEのホストとポートが空欄だったところを以下のように設定。
'HOST': '127.0.0.1',
'PORT': '5432',

・postgreSQLの設定ファイルpg_hba.confで
local all all (空欄)を
local all all md5に変更
⇒この状態でスーパーユーザーを作成しようとすると、サーバーが起動しません。
こちらを参考にサーバーが起動していないことを確認しました。
md5を空欄に戻すと、サーバーの起動は確認できましたが上記のエラーが解決しません。

・PCの再起動

・PyCharmでDB_USER、DB_PASSWORDを設定したコマンドを登録して実行

補足情報(FW/ツールのバージョンなど)

Django 4.0.4
PostgreSQL 14.0
python 3.9.6
Windows 10 home

ご回答よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

PostgreSQLにpostgresでログインし、
create user <ユーザー名> with password '任意のパスワード';
ALTER ROLE <ユーザー名> WITH SUPERUSER;
を実行。その後、質問文にもある元の手順(以下3行)でできました。

set DB_USER=testuser
ser DB_PASSWORD=pswd
python manage.py createsuperuser --settings <指定のプロジェクト設定ファイル>

投稿2022/05/29 02:37

yohida19

総合スコア52

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問