WEBスキル

Django開発用サーバーのrunserver起動時エラーの対応

Djangoでrunserverで開発用サーバーを立ち上げようとすると以下エラーが発生することがあります。

【エラーの抜粋】

conn = _connect(dsn, connection_factory=connection_factory, **kwasync)psycopg2.OperationalError

エラーになるときと、ならない時とあるのではっきりした原因は分かっていませんが、Windows10によく起きるエラーの様です。

django.db.utils.OperationalErrorの対応

postgreSQLのconfファイルの一部を修正することで解消されるようです。私もこの方法で解決しました。

内容を修正するファイルがある場所

C:\Program Files\PostgreSQL\13\dataファイル名:postgresql.conf

【変更前】

# These settings are initialized by initdb, but they can be changed.
lc_messages = 'Japanese_Japan.932'


# strings
lc_monetary = 'Japanese_Japan.932'
lc_numeric = 'Japanese_Japan.932'
lc_time = 'Japanese_Japan.932'

【修正後】

# These settings are initialized by initdb, but they can be changed.
lc_messages = 'en-US'

# strings
lc_monetary = 'en-US'
lc_numeric = 'en-US'
lc_time = 'en-US'

場合によっては、lc_messages のみ’en-US’に変更するだけで解消されることもあるらしいですが、原因は不明です。

上記の変更後にPCを再起動して、再度runserverを実行してください。おそらく解消されると思います。

おまけ

postgreSQLのコマンド「create database データベース名」で新規作成するデータベース名にアルファベットの大文字を使わないことを推奨します。

(例)photoprojectを事前に新規作成した後で、create database photoProjectを入力した際に、

Pが大文字になっているにもかかわらず、「すでにphotoprojectという名前のデータベースがそんざいしています」とエラーメッセージがありました。小文字と大文字をうまく識別していないかもしれません。

Pを大文字にしてデータベースを作成しても、Pが小文字の「photoproject」がすでにあるため、エラーが出ている
ABOUT ME
den
完全独学でWEBデザインを無謀にも挑戦している中年男。 工場勤務の会社員で3児の父。 チャレンジを忘れず、妻に怒られても心はおれず。 有益な情報を発信し、これを見ている人の為になればと思っています。
関連記事一覧