環境構築

PostgreSQLの環境構築方法

Docker上に構築するのではなく、ローカルに構築する方法を紹介していきます。

PostgreSQLをインストールする方法はいくつかあるのですが、1番手軽なbrewを使ってのインストール方法でやっていきます。

brewを使うにはHomebrewをインストールする必要があるので、公式サイトのコマンドを使ってインストールしておきます。

https://brew.sh/index_ja

一応こちらでも記載しておきます。ターミナル上で実行してください。

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

無事インストールが完了されたら、バージョン確認を行ってコマンドを実行できるか試しておきます。

brew -v
> Homebrew 3.2.12
> Homebrew/homebrew-core (git revision 9f455e7d628; last commit 2021-09-16)
> Homebrew/homebrew-cask (git revision 94a5ed306a; last commit 2021-09-16)

ここで、brewコマンドを使ってpostgreSQLをインストールします。

brew install postgresql

homebrewインストール時と同様にバージョンチェックしてコマンドが使えるか確かめます。もし、使えない場合にはパスを通す必要があります。

psql -V
> psql (PostgreSQL) 13.4

次のインストールはPostgreSQLをGUIでも扱えるようにするものなので、CUIで問題ないという方はスキップしていただいて大丈夫です。

今回使うのはpqadminというもので、公式サイトからインストーラをダウンロードして使っても良いのですが、brewでも行えるのでそちらでインストールしていきます。

公式サイト:https://www.pgadmin.org/

brew install pgadmin4

インストールが完了すると、applicationフォルダにアイコンが追加されているはずです。このアプリケーションでPostgreSQLのDBやテーブルを読みにいくことができます。

早速、PostgreSQLを起動してみます。

postgres -D /usr/local/var/postgres

続いて、PostgreSQLは起動したままにして別タブもしくは別ウィンドウを開いて、ユーザーを作成していきます。

createuser -P workuser

workuserというユーザー名を指定していますが、任意の名前を指定して問題ありません。

入力後、パスワードを聞かれるので入力して、パスワードチェックのために同じパスワードを入力すれば完了です。

次に、今あるデータベースを確認します。

psql -l

test_databaseというものは現在ないので、これから作っていきます。

まず、PostgreSQLに接続します。

psql -d postgres

ユーザー一覧表示して、先程作成したユーザーがいるか確認してみます。

\du

画像ではworkuserには権限として、Create DBが割り当てられていますが、最初は何も権限がないので割り振ってあげる必要があります。

データベース作成権限がないので権限を付与します

ALTER ROLE workuser CREATEDB;

再度ユーザー一覧を表示して権限が割り振られているか確認しましょう。

割り振られていたら、CUIの操作を終了してGUI操作に移っていきます。

データベースの切断方法は、\qです。

CUI操作で問題なく行ける方は、接続している状態で実行コマンドを叩いていけば大丈夫です。

pqAdminの操作

PostgreSQLは起動したままにする必要があるので、停止してしまった方は再度起動しておいてください。

アプリケーションフォルダ内に上記のアイコンがあると思うので、そちらを起動してください。

そうすると、初期画面が表示されパスワードの設定を求められます。次回以降は入力した任意のパスワードが必要になります。

接続先の設定を読み込んで、pgAdminの方で表示してみましょう。

Servers > Create > Server… の順で設定を書き込むウィンドウを表示します。

Nameは任意に設定します。タブをConnectionに切り替えてHost name/addressにローカルホストを指定するために「127.0.0.0」を入力します。

Portは設定をいじってなければデフォルトのままで大丈夫です。

UsernameとPasswordには先程作成したものを入力します。

Saveを押して、何もエラーが無ければ左側にメニューにNameで指定した名前が表示されます。

サーバーが表示されたら、既にあるデータベースにテーブルを作成してもいいのですが、デフォルトのデータベースは触りたくないので、データベースを新たに作成していきます。

Databaseには任意の名前を指定して、あげれば問題なく作成されます。

Schemasタブの中にTablesがあるのでそちらを選択してウィンドウを開いてテーブル名を指定します。

カラムをGUIで設定をする場合には、Columnsにタブを切り替えて内容を入力すれば問題ありません。
※O/Rマッパーを使うのであれば、別途モデルを定義するので必要がありません。

これでPostgreSQLを使用する準備が整いました。

ここからはお好きなフレームワークでDBを繋ぎ込めます。