0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MacでDjangoとPostgresqlを接続する

Posted at

MacでDjangoとPostgresqlを接続する

MacOSでDjangoプロジェクトでPostgreSQLを使用するための設定とインストール方法について説明します。

1. PostgreSQLのインストール

Homebrewのインストール

Homebrewがインストールされていない場合、以下のコマンドをターミナルで実行してインストールします。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

PostgreSQLのインストール

Homebrewを使ってPostgreSQLをインストールします。

brew install postgresql

2. PostgreSQLの起動と設定

PostgreSQLの起動

PostgreSQLサービスを起動します。

brew services start postgresql

データベースとユーザーの作成

以下のコマンドを使ってPostgreSQLに接続します。

psql postgres

次に、以下のSQLコマンドを実行して、データベースとユーザーを作成します。

CREATE DATABASE mydatabase;
CREATE USER myuser WITH PASSWORD 'mypassword';
ALTER ROLE myuser SET client_encoding TO 'utf8';
ALTER ROLE myuser SET default_transaction_isolation TO 'read committed';
ALTER ROLE myuser SET timezone TO 'UTC';
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;

mydatabasemyuser、およびmypasswordは任意の名前に変更してください。

3. Djangoプロジェクトの設定

PostgreSQL用のパッケージのインストール

DjangoがPostgreSQLに接続できるようにするために、psycopg2パッケージをインストールします。

pip install psycopg2-binary

settings.pyの編集

Djangoプロジェクトのsettings.pyファイルを開き、データベース設定を以下のように変更します。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

4. マイグレーションの実行

データベースの設定が完了したら、マイグレーションを実行してDjangoのデータベーススキーマを作成します。

python manage.py migrate

これでDjangoプロジェクトがPostgreSQLを使用するように設定されました。python manage.py runserverを実行して、正常に動作することを確認してください。

5. トラブルシューティング

もし何らかのエラーが発生した場合、以下の点を確認してください。

  1. PostgreSQLが正しく起動しているか: brew services listで確認できます。
  2. データベース名、ユーザー名、パスワードが正しいか: psqlにログインして確認できます。
  3. psycopg2-binaryパッケージが正しくインストールされているか: pip listで確認できます。

これでMacOS上でDjangoプロジェクトをPostgreSQLと連携させるための設定は完了です。

6. HomebrewでインストールしたPostgreSQLのバックグランド実行を停止する

brew services stop postgresql

これにより、PostgreSQLサービスが停止し、バックグラウンドでの実行が切られます。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?