postgreSQL 環境構築

Python

以前の記事で作成したFlask WEBアプリケーションをRenderにデプロイするにあたって、データベースとしてPostgreSQLを使用することが必要です

以前の記事でSQLAlchemyを使ってSQLiteというデータベースを操作する方法を解説しました

今回は、postgreSQLの環境構築をして、データベースを操作する方法を解説します

PostgreSQL と SQLite はどちらもリレーショナルデータベース管理システム (RDBMS) ですが、設計目的や使用方法に大きな違いがあります

PostgreSQLは、クライアントサーバー型の設計で、複数のクライアントが同時にアクセス可能です

データはデータベースサーバーに保存され、サーバープロセスが管理します

SQLite は、単一のファイル(.sqlite や .db)にすべてのデータを保存し、サーバー不要でアプリケーションに直接組み込み可能です

大規模で複雑なシステムには PostgreSQL、小規模でシンプルなアプリには SQLite を選ぶのが一般的です

・環境

Windows 11
psql (PostgreSQL) 17.2

・postgreSQLのインストール

1. 公式サイトからインストーラーをダウンロード

以下のサイトにアクセスしてインストーラーをダウンロードします

PostgreSQL: Downloads

お使いのOSに合わせてインストーラーをダウンロードして、ウィザードに従ってインストールします
途中でパスワードを設定するので忘れずにメモしておきます

または以下のようにChocolateyを使用してインストールすることもできます

Chocolatey のインストール確認

Chocolatey がインストールされていることを確認します

まだインストールされていない場合、以下のコマンドでインストールできます

  • 管理者権限で PowerShell を開く
  • 以下のコマンドを実行
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
  • インストール後、以下のコマンドでバージョンの確認をします
choco -v

PostgreSQL のインストール

Chocolatey を使用して PostgreSQL をインストールします

  • 管理者権限で PowerShell またはコマンドプロンプトを開く
  • 以下のコマンドを実行:
choco install postgresql

2. インストールが完了したらパスを通す

psql(postgreSQL)をどこからでも使用できるように、PostgreSQL の bin ディレクトリを環境変数 PATH に追加します

  • ディレクトリを確認

通常、psql.exe は以下にインストールされます

C:\Program Files\PostgreSQL\<version>\bin
  • 環境変数に追加

Windows の検索バーで「環境変数」と入力し、「環境変数の編集」を選択

システム環境変数から Path を選択し、「編集」をクリック

上記の bin ディレクトリを追加

「OK」をクリックして設定を保存

  • 確認

新しいコマンドプロンプトまたは PowerShell を開き、以下を実行します

psql --version

正しいバージョンが表示されれば成功です。

3.PostgreSQL サービスの起動確認

PostgreSQL のサービスを起動するには、以下の手順を実行します

サービスが正しくインストールされているか確認

net start postgresql

サービスの状態を確認するには

Get-Service postgresql*

4. PostgreSQL にログイン

PostgreSQL のデフォルト設定では、postgres ユーザーが作成されています

以下のコマンドでログインできます
パスワードを聞かれるのでインストール時に設定したパスワードを入力します

psql -U postgres

ログインできたら新規ユーザーを作成します
ユーザー名とパスワードを設定して以下のコマンドを入力します

CREATE USER user名 WITH PASSWORD 'パスワード';

データベースを作成します
先ほど作ったユーザー名をオーナーとします
オーナーはデータベースのすべての権限を持ちます

CREATE DATABASE database名 OWNER user名;

データベースを作成出来たら一回ログアウトします

\q

そして、先ほど作成したデータベースにログインできるか試してみます
ユーザーのパスワードを求められるので入力します

psql -U user名 -d データベース名 -h localhost -p 5432

ログインしたあとは、このようにターミナルなどを使ってデータベースを作成することも出来ますが、pgAdmin4というツールを使ってGUIのようにデータベースを操作する事も出来ます

また、python SQLAlchemyを使ってデータベース操作をすることもできます

次回以降の記事でこれらについて解説していきたいと思います

コメント