پرش به محتوا

PostgreSQL روی Rocky و AlmaLinux

PostgreSQL را از مخزن سیستم نصب و مقداردهی اولیه کنید، احراز هویت را از ident به scram-sha-256 تغییر دهید و نقش برنامه بسازید.

Rocky Linux 10سطح: مقدماتیبرای: Rocky Linux 10، AlmaLinux 10، CentOS Stream 10، Rocky Linux 9، AlmaLinux 9به‌روزرسانی: ۱۶ آبان ۱۴۰۵

۱. نصب و مقداردهی اولیه

برخلاف Debian و Ubuntu، در خانواده‌ی RHEL پایگاه داده پس از نصب خودکار ساخته نمی‌شود:

bash
sudo dnf install -y postgresql-server postgresql-contrib
sudo postgresql-setup --initdb
sudo systemctl enable --now postgresql

برای دیدن نسخه‌های دیگر در دسترس (در نسخه‌ی ۹): dnf module list postgresql

۲. روش احراز هویت

پیش‌فرض برای اتصال‌های TCP روش ident است که برای برنامه‌ها مناسب نیست. فایل را باز کنید:

bash
sudo nano /var/lib/pgsql/data/pg_hba.conf
local   all   postgres                peer
local   all   all                     scram-sha-256
host    all   all   127.0.0.1/32      scram-sha-256
host    all   all   ::1/128           scram-sha-256

در /var/lib/pgsql/data/postgresql.conf مطمئن شوید:

ini
password_encryption = scram-sha-256
bash
sudo systemctl restart postgresql

۳. نقش و پایگاه داده

bash
sudo -u postgres createuser --pwprompt hr
sudo -u postgres createdb -O hr hr
psql -h 127.0.0.1 -U hr -d hr -c 'select 1;'

۴. دسترسی از سرور برنامه

اگر برنامه روی سرور دیگری است:

ini
# postgresql.conf
listen_addresses = 'localhost,192.168.10.31'
# pg_hba.conf
host  hr  hr  192.168.10.40/32  scram-sha-256
bash
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.10.40/32 service name=postgresql accept'
sudo firewall-cmd --reload
sudo systemctl restart postgresql