PostgreSQLのインストール

# PostgreSQLのインストール作業メモ
どうやってインストールしたか忘れているだろう3年後の自分へ向けて、備忘録として作業手順をここに残しておく。

## PostgreSQLとは
PostgreSQLは、オープンソースのリレーショナルデータベース管理システム（RDBMS）で、Linux、Windows、Mac OSにも対応している。オープンソースなので無料で使うことができる。

## インストール環境
|OS・ソフトウェア|バージョン等|
|---|---|
|Windows|Windows 10 Pro 64bit|
|PostgreSQL| PostgreSQL 15|

## PostgreSQLのインストール手順
### 1. パッケージのダウンロード</li>
 
公式サイトからパッケージをダウンロードする。

https://www.postgresql.org/download/windows/

今回インストールする環境はWindows 10なので、Windows版のインストーラーをダウンロードする。PostgreSQLのバージョンの制約等はないので、最新バージョンのインストーラーをダウンロードする。
![PostgreSQL_ Windows installers - Google Chrome 2023_04_17 9_49_41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/e6b92b0f-53b6-7cf6-ec05-47410c9a7d18.png)
![Community DL Page - Google Chrome 2023_04_17 9_54_20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/581eceb6-63f2-de17-bfc4-79c36f3e2621.png)
### 2.ダウンロードしたインストーラーを実行する
1. 手順1.でダウンロードしたインストーラーを実行すると、次のような画面が立ち上がるので「Next>」を押して次へ。
![Setup 2023_04_16 16_15_49.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/ffb3de9f-fe62-447c-0e5e-6545e97bb462.png)

2. インストールするディレクトリはデフォルトのまま「Next>」を押して次へ。
※インストールするディレクトリを変更したい場合は、「Installation Directory」に指定するディレクトリを変更する。
![Setup 2023_04_16 16_16_37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/72347779-e0a0-5987-7d16-17d7a9d8156b.png)

3. インストールするコンポーネントはデフォルトのまま「Next>」を押して次へ。
![Setup 2023_04_16 16_17_27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/b4bb69c0-e717-73c1-ba45-1dd51c488d71.png)

各コンポーネントについて
|コンポーネント|チェック|説明|
|---|---|---|
|PostgreSQL Server|必須|PostgreSQLのデータベースサーバー。|
|pgAdmin 4|準必須|PostgreSQLのデータベースとサーバの操作・管理するためのGUIアプリケーション。必須ではないが入れておいた方がいい|
|Stack BUilder|任意|追加でドライバーやアプリケーションをインストールするためのもの。チェックはなくてもいい|
|Command Line Tools|準必須|「pg_dump」などのコマンドを実行するためのもの。入れておいた方がいい|

4\. データディレクトリはデフォルトのまま「Next>」を押して次へ。
※データ格納先を変更したい場合は、「Data Directory」に指定するディレクトリを変更する。
![Setup 2023_04_16 16_18_35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/5449cd00-15aa-4ae2-1431-ec508dfc7a1a.png)

5\. スーパーユーザ（postgres)のパスワードを設定する。
設定するパスワードの制限はなさそうなので「password」を設定する。

:::note warn
一般公開するサービスではこんな設定をしてはいけない
:::

![Setup 2023_04_16 16_20_29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/d4aad985-c590-6de0-3b9e-b3691d95f2f3.png)

6\. ポートの設定はデフォルトのまま「Next>」を押して次へ。
![Setup 2023_04_16 16_21_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/35fb5288-42a9-c986-c388-f7debfea8762.png)

7\. ロケーションは「Japanese」を選択し、「Next>」を押して次へ。
![Setup 2023_04_16 16_22_31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/a402f14b-25a8-c776-797b-61abd7d257b2.png)

8\. これまで設定内容を確認するためのダイアログ。問題がなければ「Next>」を押して次へ。
![Setup 2023_04_16 16_23_26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/5e0e89c2-9b34-1d67-313e-e937f3fce3a6.png)

9\. 「Next>」を押して次へ。インストールが開始される。
![Setup 2023_04_16 16_25_11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/6f8cd9af-2536-167b-7610-3afa37683963.png)
![Setup 2023_04_16 16_25_59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/cba83d98-aaf7-dc17-070f-dcd6827ed596.png)

10\. インストール完了。「Finish」を押す。「Stack Builder ～」のチェックを入れた場合、スタックビルダが起動する。チェックを入れなければここで終了。
![Setup 2023_04_16 16_31_30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/5d9eb97a-e9e4-07e7-619f-7146fc1b61ec.png)

11\.　手順10.でチェックを入れていた場合、下の画面が起動する。スタックビルダはドライバやソフトウェアを追加するためのものなのでここでは「キャンセル」でいい。
![スタックビルダ 4.2.1 2023_04_16 16_32_27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/9614bfb9-5227-b827-7157-b44b7210810a.png)

### 3.環境変数の設定
　システム環境変数のPathにPostgreSQL実行パス（C:\Program Files\PostgreSQL\15\bin）を追加する。
　1. 新規に環境変数を追加

|変数名|変数値|補足説明等|
|---|---|---|
|POSTGRESQL_PATH|C:\Program Files\PostgreSQL\15\bin|手順3.2.で設定したディレクトリのパスを設定<br>PostgreSQLを使用するための環境変数|
|PGDATA|C:\Program Files\PostgreSQL\15\data|手順3.4で設定したディレクトリのパスを設定<br>PostgreSQLが使用する環境変数|

　2. 手順1.で追加した変数を「Path」に追加する

|変数名|変数値|
|---|---|
|Path|%POSTGRESQL_PATH%|

### 4. PostgreSQL起動確認
　1. 下記コマンドを実行し、PostgreSQLのバージョンが出力されているか確認する
```
psql --version
```
実行結果
![C__WINDOWS_system32_cmd.exe 2023_04_17 11_38_36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/245dba64-9c5a-7fdc-7337-e29de407449d.png)

　2. PostgreSQLのサービスが起動しているか確認する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/54d396bb-a554-4bb0-f0c9-efcefdb2bf9e.png)
![サービス 2023_04_17 11_45_14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/c64d71f8-c081-12c6-c679-355f9788ef74.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/87343/1b402614-6afc-8ae5-8f66-ac5416ff5d08.png)