PostgreSQLをローカル環境にインストール・設定する方法

この記事では、PostgreSQLの最新版(執筆時では14.1)をインストール・設定を行い、ローカル環境を準備する手順をまとめます。

概要
  • 1
    インストール

    インストーラをダウンロードして、postgresSQLをインストールします。

  • 2
    接続確認

    psqlとpgAdmin4で接続確認します。

インストール

公式サイトから最新版のインストーラをダウンロードします。

この記事ではWindows10 Homeを使用するため、Windows x86-64を選択します。ダウンロードしたexeファイルを開き、デフォルトでインストールしていきます。

インストール先:C:\Program Files\PostgreSQL\14

Components:すべて選択

Componentsには次のものがあります。

  • PostgreSQL Server
  • pgAdmin4 … 管理と操作のためのGUIツール
  • Stack Builder … 周辺ツールをインストールするもの
  • Command Line Tool

データの保存先:C:\Program Files\PostgreSQL\14\data

データの保存先として選んだパスは、データベースクラスタ(データベースを格納する領域)として使われます。

続いてパスワードを入力します。このPWはsuper userのログインに使用します。

Portもデフォルトの5432でNextを押します。既に異なるバージョンのPostgreSQLをインストールしている場合にはポートが競合しているかもしれないので注意してください。

デフォルトのロケールは[Default locale]のままにすると日本語環境が選ばれます。日本語環境ではロケールを使用することにメリット・デメリットがあるため任意になります。PostgreSQLではロケールの使用は非推奨のため、Cを選択します。

最後にSummaryが表示されます。

インストール終了後、プログラム一覧にPostgreSQL 14があることを確認してインストールは終了です。

接続確認

DBの接続確認にはSQLShell(psql)かpgAdmin4を使用します。両方試してみましょう。

psql

psqlを起動して何も入力せずにEnterを押すことで、デフォルトの値が入力されます。ユーザ postgres のパスワードのみインストール時に指定したものを入力します。

Server [localhost]:
Database [postgres]:
Port [5432]:
Username [postgres]:
Client Encoding [SJIS]:
ユーザ postgres のパスワード:
psql (11.15)
"help" でヘルプを表示します。

postgres=#

cmdからpsqlを叩きたい場合はPATHにC:\Program Files\PostgreSQL\14\binを追加し、psql -h localhost -p 5433 -U postgres -d postgresと入力します。

psql -h ホスト名 -p ポート番号 -U ロール名 -d データベース名

>psql -h localhost -p 5432 -U postgres -d postgres
ユーザ postgres のパスワード:
psql (11.15)
"help" でヘルプを表示します。

postgres=#

先ほどのSetup時に選択したロケールは以下のように確認できます。

postgres=# SELECT name, setting, context FROM pg_settings WHERE name LIKE 'lc%';
    name     | setting |  context
-------------+---------+-----------
 lc_collate  | C       | internal
 lc_ctype    | C       | internal
 lc_messages | C       | superuser
 lc_monetary | C       | user
 lc_numeric  | C       | user
 lc_time     | C       | user
(6 行)

pgAdmin4

起動するとPWを聞かれるので入力。ただしこれはsuper userのPWではなく任意のPWです。

pgAdmin4はブラウザとして起動します。初期設定では英語表記ですが、ファイル>設定>ユーザ言語で日本語表記に変更できます。