PostgreSQLインストールと起動【MacOS】Pythonドライバ使用

PostgreSQLは、オープンソース系のリレーショナルデータベース(Relational Database : RDB)です。

このデータベースは仮想環境構築でも使われており、業務仕様にも耐えれるデータベースとして実績が豊富です。
業務実績としては「MySQL」も有名ですが、今回は「PostgreSQL」を「MacOS」へインストールをまとめました。

また、PostgreSQLはBSDライセンスに準拠しており、著作権とライセンスを明記しておけば、再利用及び再配布は自由となっています。

MacOSへ「PostgreSQL」のインストールと起動

MacOSでPostgreSQLをインストールする際は、インストーラーよりも手順が簡単な「Homebrew」を使用してPostgreSQLをインストールします。

まずは事前に「Homebrew」のインストールを実施しましょう。

Homebrewのインストール

「Homebrew」は以下のサイトへアクセスし、表記されている実施コマンドをそのまま「ターミナル」で実行します。

https://brew.sh/index_ja

Macのターミナルを起動し、以下のコマンドを実行しましょう。

/bin/bash -c "$(curl -fsSL ;

うまくインストールができれば、「PostgreSQL」のインストールを実行します。

PostgreSQLインストール

MacOSで「ターミナル」を起動し、「Homebrew」の以下のコマンドを実行し、インストールを実行します。

~ $ brew install postgresql

バージョン指定でインストールをする場合以下のコマンドを実行します。
(以下はバージョン10系を指定)

~ $ brew install postgresql@10

正常にインストールされたことを確認するには以下のコマンドを実行します。
PostgreSQLのバージョンが表示されたことが確認できれば成功です。

~ $ psql --version
psql (PostgreSQL) 12.2
~ $ 

「command not found」エラーが発生した場合の対処法

上記のコマンドでエラーが発生した場合は、PostgreSQLファイルへのパスが通っていないためエラーが発生します。
以下の手順でPostgreSQLのパスを通してあげます。

  1. 以下コマンドで、「.bash_profile」ファイルがホームディレクトリに存在していることを確認します。
  2. ~ $ ls -la ~ | grep profile
    -rw-r--r--   1 kobayashiseigo  staff     188  1 20 01:32 .bash_profile
    
  3. 存在しない場合は以下のコマンドでファイルを作成します。
  4. ~ $ touch ~/.bash_profile
    
  5. 次に、作成したファイルを編集するため以下のコマンドを実行します。
  6. ~ $ vi ~/.bash_profile 
    
  7. 「i」キーで編集モードにし、以下を記述します。
    バージョン指定の場合は「postgresql」の箇所が「postgresql@12」となります。

    以下はバージョン12.2をインストールした場合の記述となります。
    入力が完了した後は、「esc」キーを押して、「:wq」でファイルを保存して抜けます。

  8. export PATH=$PATH:/usr/local/Cellar/postgresql@12/12.2/bin/
    
  9. 最後に以下のコマンドを入力し、パスの有効化します。
  10. ~ $ source ~/.bash_profile 
    

データベースの作成

パスがうまく通れば、次にPostgreSQLを起動します。

  1. 「@」をつけてバージョン指定でインストールした場合は「postgresql@10」と入力します。
  2. ~ $ brew services start postgresql
    ==> Tapping homebrew/services
    Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
    remote: Enumerating objects: 691, done.
    remote: Total 691 (delta 0), reused 0 (delta 0), pack-reused 691
    Receiving objects: 100% (691/691), 186.95 KiB | 492.00 KiB/s, done.
    Resolving deltas: 100% (273/273), done.
    Tapped 1 command (39 files, 260.5KB).
    ==> Successfully started `postgresql` (label: homebrew.mxcl.postgresql)
    
  3. データベース「private_diary」の作成をするために「createdb」コマンドを実行します。
  4. ~ $ createdb private_diary
    
  5. 「psql -l」コマンドでデータベース一覧を確認します。
    上記で作成したデータベース「private_diary」が存在していると作成成功です。
  6. ~ $ psql -l
                                            List of databases
         Name      |     Owner      | Encoding | Collate | Ctype |         Access privileges         
    ---------------+----------------+----------+---------+-------+-----------------------------------
     postgres      | User           | UTF8     | C       | C     | 
     private_diary | User           | UTF8     | C       | C     | 
     template0     | User           | UTF8     | C       | C     | =c/User                +
                   |                |          |         |       | User=CTc/User
     template1     | User           | UTF8     | C       | C     | =c/User                +
                   |                |          |         |       | User=CTc/User
    (4 rows)
    
    ~ $ 
    

ドライバのインストール

今回インストールしたPostgreSQLはDjangoでも使用するので、Pythonから接続する際に最もよく利用されている「psycopg2」をインストールしておきます。

python環境下で以下のコマンドを実行します。

~ $ pip install psycopg2-binary
Collecting psycopg2-binary
  Downloading psycopg2_binary-2.8.4-cp38-cp38-macosx_10_9_x86_64.macosx_10_9_intel.macosx_10_10_intel.macosx_10_10_x86_64.whl (1.5 MB)
     |████████████████████████████████| 1.5 MB 1.6 MB/s 
Installing collected packages: psycopg2-binary
Successfully installed psycopg2-binary-2.8.4
~ $ 

データベースの停止

PostgreSQLを停止するには以下のコマンドを実行します。
こちらも、「@」マークをつけてバージョン指定でインストールした場合は「postgresql」を「postgresql@12」というコマンドで指定しましょう。

~ $ brew services stop postgresql
Stopping `postgresql`... (might take a while)
==> Successfully stopped `postgresql` (label: homebrew.mxcl.postgresql)
~ $ 

MacOSに「PostgreSQL」をインストールする手順は以上となります。




エンジニアのオンライン学習

ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。

おすすめオンライン教材
自宅で学習ができるオンラインスクール

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUT US
げんき☆ひろき
インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!