Database
Linux üzərində PostgreSQL Serverin quraşdırılması və ayarlanması
Salam əziz dostlar, bu gün sizə GNU/ Linux -un məhşur distrolarından olan Rock üzərində Postgresql Server -in quraşdırılmağı göstərəcəm.
Rocky Linux, Red Hat Enterprise Linux (RHEL) ailəsinə aid bir distro olduğundan, PostgreSQL serverini quraşdırmaq üçün dnf
və ya yum
paket menecerlərindən istifadə edirsiniz. PostgreSQL serverini quraşdırmaq üçün aşağıdakı addımları izləyə bilərsiniz:
1. PostgreSQL repo əlavə edin:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/repo.rpm
2. PostgreSQL quraşdırılması üçün ƏS paketlərinin yeniləyin:
sudo dnf update
3. PostgreSQL-i server və modulunu quraşdırmaq üçün aşağıdakı komandanı işə salırıq
sudo dnf install postgresql-server postgresql-contrib
4. Postgre serverimizi aşağıdakı komanda ilə işə salırıq
$ sudo systemctl enable postgresql-15
$ sudo systemctl start postgresql-15
5. İndi PostgreSQL server-ə kənardan qoşulmaq üçün default portuna (5432) icazə verib Fireewall-da reload etməliyik.
sudo firewall-cmd –zone=public –add-port=5432/tcp –permanent
sudo firewall-cmd –reload
6. PostgreSQL Server hazır olduqdan sonra PostgreSql-in defaul user-ilə giriş etmək üçün
sudo -i -u postgres
7. Yeni Database yaradmağı yoxlayın (misal üçün, “mydatabase”):
8. Database-ə qoşulmaq üçün istifadəçi yaradaq ( default postgre useri əsas user olduğu üçün) biz yeni bir istifadəçi yaratmağı şiddətlə tövsüyə edirik.
9. Yartdığımız user-ə hansı Database qoşulacaqsa ona icazə verəcəyik.
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;
10. PostgreSQL-in terminaldan çıxış edin:
11.Servis-in lonfiqurasiyası üçün:
Postgresql-ə daxildən qoşulmaq icazəsi olduğu üçün, kənardan qoşulmaq üçün müəyyən konfiq-lər olunmalıdır.Bu prosesi etməzdən əvvəl PostgreSQL servisi stop edilməlidir
sudo systemctl stop postgresql-15.service
sudo systemctl status postgresql-15.service
postgresql.conf faylında listen_addresses paremetri ayarlanmalıdr
$ vi /var/lib/pgsql/15/data/postgresql.conf
listen_addresses = ‘*’
12. Linux-da Data folder-nin yeri quraşdırma zamanı avtomatik olaraq standart kimi təyin edilir və siz onu sonra dəyişə bilərsiniz. Linux-da Data folderinin yerləşdiyi yerin ünvanı /var/lib/pgsql/15 -dir
13. Datanı / root yerinə ayrı diskdə saxlasaq həm performans, həm də idarəetmə baxımından daha sərfəli olar. Buna görə də biz serverə ayrıca disk əlavə edirik və bu diski /pg_data folderine quraşdırırıq:
sudo mkdir /pg_data
sudo mount /dev/vg_data/lv_data /pg_data
14. PostgreSQL-in defolt folder-dəki faylları yaratdığımız yeni folder ilə sinxronlaşdırırıq:
sudo rsync -av /var/lib/pgsql /pg_data
15. Data-nı bu bu yolda saxlamaq üçün data_directory parametri yenidən postgresql.conf faylında ayarlanır
data_directory = ‘/pg_data/pgsql/15/data’
16.
pg_hba.conf faylı confiq ediliməldir.
$ vi /var/lib/pgsql/15/data/pg_hba.conf
host all all 0.0.0.0/0 md5
host all all ::/0 md5
17. Bu konqləri etdikdən sonra PostgreSQL servisini işə salırıq:
sudo systemctl start postgresql-15.service
sudo systemctl status postgresql-15.service
18. Tətbiqlərimizdə Azərbaycan dilini dəstəkləmək üçün dil paketi quraşdırırıq:
19. Daha sonra postgre qoşulub burada Azərbaycan collation yaradaq:
20. pg_hba.conf folderində hansı userın hansi Database-ə hansı IP ile bağlanacağına icazə vermək üçün:
vim /var/lib/pgsql/15/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD
host test_db +test_user 192.168.0.0/16 md5
21. Daha sonra conf reload edilir:
$ psql
postgres# SELECT pg_reload_conf();