0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

djangoのDBにpostgresqlを設定する

Posted at

やりたいこと

djangoのチュートリアルをやりたい゛!!!!
デフォルトではsqliteを使う設定になっているが、後でデプロイするかも...という話があったので、postgresqlを使う設定に変えたい!
という感じの記事です。
やったことを備忘録的に記していきます。

環境

macです

postgresqlのダウンロード

brew install postgresql

psqlの各種設定

django経由で動かす前にテーブルを作ったり権限を変更したりする必要があるっぽい
ということで、

サーバーの立ち上げ

brew services start postgresql

これでpsqlコマンドを打てるようになります

ユーザ作成

$createuser -P hogehoge

//パスワード設定
Enter password for new role: ここで1回目入力後Enter
Enter it again: ここで2回目入力後Enter

権限変更 (新しくユーザーを作る場合)

superuserの権限を持っているユーザでログインして、

psql -U <superuser> postgres

以下のように権限を持たせたいアカウントに SUPERUSERCREATEDBの権限を持たせてあげる

ALTER ROLE <newuser> with SUPERUSER;
ALTER ROLE <newuser> with CREATEDB;

データベース作成

先にデータベースを作っておこう (ownerは新しく作ったユーザーの想定)

CREATE DATABASE hogetable -O <newuser>;

psqlの方はこれでOK!

djangoの設定をいじる

setting.pyを以下のようにいじってあげる
注意点としては、この際'NAME'は、BASE_DIRを取ってあげる(psqlがデータベースの名前から勝手に場所を探してくれる為)

DATABASES = {
     'default': {
         'ENGINE': 'django.db.backends.postgresql_psycopg2',
         'NAME': '<db_name>',
         'USER': '<db_username>',
         'PASSWORD': '<password>',
         'HOST': '<db_hostname_or_ip>',#これはなくてもなんとかなる
         'PORT': '<db_port>', #これはなくてもなんとかなる
     }
 }

そして希望のmigrateきちゃーーーー!!!

python manage.py migrate

多分これでmigrateまでいけます やったね

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?