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

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

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

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

PostgreSQL

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

Q&A

解決済

1回答

1222閲覧

DjangoをHerokuにデプロイする際のデータベース設定でPostgresqlに接続できません

kero16

総合スコア9

Django

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

PostgreSQL

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

0グッド

0クリップ

投稿2020/05/25 00:07

前提・実現したいこと

初めてDjangoをHerokuにデプロイするにあたり、
データベース設定に伴うPostgresql接続でつまづいております。
色々なサイトを拝見したのですが自力で解決できず、質問させてください。

settings.pyで★(下記)を設定するために

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': '[★]', 'USER': '[★]', 'PASSWORD': '[★]', 'HOST': '127.0.0.1', 'PORT': 5432, }

新しいデータベースとユーザーを作成したいのですが、

psql -U postgres

というコマンドを打つと、次のようなエラーが出てしまいます。

psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

上記に対する解決策として、ネットに色々な情報があったのですが、
つまりどういうことなのかという根本が理解できませんでした。

どういう理由で接続できないのかと、このエラーに対する解決策を教えていただければ幸いです。
何卒よろしくお願いいたします。

ちなみに
brew services lisというコマンドを打つと、次のようなエラーが出ました。

Name Status User Plist postgresql stopped postgresql@10 stopped

補足情報(バージョンなど)

psql (PostgreSQL) 10.11
Python 3.7.6

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

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

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

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

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

hoshi-takanori

2020/05/25 01:49 編集

heroku 以前にまずローカルで PostgreSQL を動かしたいってことですよね。 PostgreSQL サーバーが動いてないので、brew services start postgresql で動かしましょう。 (なぜ postgresql とpostgresql@10 の二つ入ってるのか謎ですが…。)
kero16

2020/05/25 02:30

ご回答くださいましてありがとうございます。 brew services start postgresql  ==> Successfully started `postgresql` (label: homebrew.mxcl.postgresql) という結果になりましたので、ローカルでPostgreSQLが動かせたということかと思いました。 そこで新しいデータベースを作成すべく psql -U postgres というコマンドを打ったところ 次のようなメッセージが出てきました。 psql (10.11, server 12.3) WARNING: psql major version 10, server major version 12. Some psql features might not work. Type "help" for help. postgres=> help You are using psql, the command-line interface to PostgreSQL. Type: \copyright for distribution terms \h for help with SQL commands \? for help with psql commands \g or terminate with semicolon to execute query \q to quit postgres-> \? こちらもネットで調べてみたのですが、エラーの内容を理解できません。 (短時間なのでもっと調べるべきだとは思うのですが) 何が問題で次にどのようにすれば、新しいデーターベースが作成できるのか 可能でしたら教えていただけましたら幸いです。 よろしくお願いいたします。
hoshi-takanori

2020/05/25 02:36

それはエラーではなく、正常に PostgreSQL サーバーに接続して、SQL 文の入力待ちの状態です。 (まぁ、psql コマンドとサーバーのバージョンが違うという警告も出てますが…。) そのレベルの知識だとだいぶ先は長いと思いますが、初心者向けの PostgreSQL 入門記事をお読みになることをお勧めします。
kero16

2020/05/25 02:45

エラーではないんですね。 PostgreSQL 勉強します。ありがとうございました。
guest

回答1

0

自己解決

以下の方法で、新規データベースを作成でき、無事Herokuへデプロイできました。
※自己解決として記載するつもりが、回答に投稿してしまったみたいです。すみません。
(1)教えていただきました「brew services start postgresql」で起動
(2)新規データベース作成:createdb <データベース名>
(3)データベースログイン:psql <データベース名>
(4)ユーザー作成:CREATE USER<ユーザー名>
(5)データベースのオーナーを変更:ALTER DATABASE <データベース名> OWNER TO <ユーザー名>;
(6)パスワードを設定:ALTER USER <ユーザー名> WITH PASSWORD 'パスワード'

投稿2020/05/28 11:45

編集2020/05/28 11:48
kero16

総合スコア9

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問