🐘
Fedora41 サーバで PostgreSQL を使うときのメモ
お家の検証サーバ用の備忘録です。基本 root です。
前提
続きです。
https://zenn.dev/asterisk9101/articles/fedora41server-1
インストール
とりあえずインストールします。
dnf install -y postgresql-server
最初のデータベースを作成して、サービスが起動することを確認します。
/usr/bin/postgresql-setup --initdb
systemctl enable --now postgresql
リモートホストからの接続許可
必要に応じて絞りますが、全許可します。
# ファイアウォールの許可
firewall-cmd --add-service=postgresql --permanent
firewall-cmd --reload
# リスナーの許可
sed -i.bak "/listen_addresses/a listen_addresses = '*'" /var/lib/pgsql/data/postgresql.conf
diff /var/lib/pgsql/data/postgresql.conf{,.bak}
# 認証方式の許可
sed -i.bak '$a host all all 0.0.0.0/0 scram-sha-256' /var/lib/pgsql/data/pg_hba.conf
diff /var/lib/pgsql/data/pg_hba.conf{,.bak}
# サービスの再起動
systemctl restart postgresql
アプリケーション用データベースの作成
パッケージインストール時点で OS ユーザー postgres
が作成されているので、スイッチします。
su - postgres
アプリケーション用のユーザーをパスワードの有効期限を無期限で作成します。
read -p 'User Name?> ' ID
read -s -p 'Password?> ' PW
psql -c "CREATE ROLE $ID LOGIN ENCRYPTED PASSWORD '$PW' VALID UNTIL 'infinity';"
# 確認
psql -c "\du"
アプリケーション用のデータベースを作成します。
read -p 'database name?> ' DB
createdb $DB -O $ID
# 確認
psql -l
以上
Discussion