Cum se instalează PostgreSQL utilizând codul sursă în Linux


PostgreSQL, un sistem de gestionare a bazelor de date relaționale open-source, este renumit pentru caracteristicile sale robuste și extensibilitate. În timp ce multe distribuții Linux oferă PostgreSQL prin managerii lor de pachete, instalarea acestuia din sursă permite personalizare și control mai mare.

În acest articol, vom explica cum să instalați PostgreSQL 16 utilizând instalarea codului sursă pe sistemele Linux.

Pentru cei care caută o metodă de instalare mai ușoară de la managerul de pachete de distribuție, vă rugăm să urmați ghidurile de mai jos:

Cerințe preliminare

Înainte de a intra în procesul de instalare PostgreSQL, asigurați-vă că sistemul dvs. îndeplinește următoarele cerințe preliminare:

  • O distribuție Linux (în acest ghid, vom folosi Debian în scopuri demonstrative).
  • Un sistem Linux cu un utilizator non-root cu privilegii sudo.
  • Sunt instalate instrumente de dezvoltare esențiale, cum ar fi GCC și Make.

1. Instalați Cerințe preliminare pe Linux

Mai întâi, instalați instrumente esențiale de dezvoltare, cum ar fi GCC și Make folosind managerul de pachete de distribuție, așa cum se arată.

Pe distribuțiile bazate pe RHEL, cum ar fi CentOS, Fedora, Rocky Linux și Alma Linux:

sudo yum groupinstall development-tools
sudo yum install zlib-devel readline-devel libicu-devel

Pe distribuțiile bazate pe Debian, cum ar fi Ubuntu și Linux Mint.

sudo apt install gcc build-essential zlib1g-dev libreadline6-dev libicu-dev pkg-config

2. Descărcați codul sursă PostgreSQL

Odată ce cerințele necesare sunt instalate, descărcați fișierul tar codul sursă de pe site-ul web oficial postgres folosind următoarea comandă wget direct pe sistem. În momentul scrierii, cea mai recentă versiune este PostgreSQL 16.1.

wget https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.bz2

Apoi, utilizați comanda tar pentru a extrage fișierul tarball descărcat. Va fi creat un nou director numit postgresql-16.1.

tar -xvf postgresql-16.1.tar.bz2
cd postgresql-16.1/
ls -l

Eșantion de ieșire:

-rw-r--r--.  1 tecmint tecmint    365 Nov  7 03:34 aclocal.m4
drwxr-xr-x.  2 tecmint tecmint   4096 Nov  7 03:47 config
-rwxr-xr-x.  1 tecmint tecmint 584560 Nov  7 03:34 configure
-rw-r--r--.  1 tecmint tecmint  87292 Nov  7 03:34 configure.ac
drwxr-xr-x. 61 tecmint tecmint   4096 Nov  7 03:47 contrib
-rw-r--r--.  1 tecmint tecmint   1192 Nov  7 03:34 COPYRIGHT
drwxr-xr-x.  3 tecmint tecmint   4096 Nov  7 03:47 doc
-rw-r--r--.  1 tecmint tecmint   4288 Nov  7 03:34 GNUmakefile.in
-rw-r--r--.  1 tecmint tecmint    277 Nov  7 03:34 HISTORY
-rw-r--r--.  1 tecmint tecmint  64601 Nov  7 03:48 INSTALL
-rw-r--r--.  1 tecmint tecmint   1875 Nov  7 03:34 Makefile
-rw-r--r--.  1 tecmint tecmint 102017 Nov  7 03:47 meson.build
-rw-r--r--.  1 tecmint tecmint   6266 Nov  7 03:34 meson_options.txt
-rw-r--r--.  1 tecmint tecmint   1213 Nov  7 03:34 README
drwxr-xr-x. 16 tecmint tecmint   4096 Nov  7 03:48 src

3. Configurați PostgreSQL din sursă

Deoarece postgres este o bază de date open-source, aceasta poate fi construită din codul sursă în funcție de nevoile/cerințele cuiva. putem personaliza procesul de construire și instalare furnizând una sau mai multe opțiuni de linie de comandă pentru diferite funcții suplimentare.

Utilizați următoarea comandă pentru ajutor cu diferite opțiuni și utilizarea configurației, așa cum se arată.

./configure --help

Acum rulați scriptul de configurare, care va verifica sistemul dumneavoastră pentru dependențe și va configura construcția în consecință.

./configure

4. Instalați PostgreSQL din sursă

Odată configurat, utilizați următoarele comenzi pentru a construi și instala PostgreSQL din sursă.

make
sudo make install

5. Crearea utilizatorului Postgres

Acum creați un utilizator postgres și un director care să fie folosit ca director de date pentru inițializarea clusterului bazei de date. Proprietarul acestui director de date ar trebui să fie un utilizator postgres, iar permisiunile ar trebui să fie 700, de asemenea, să stabilească o cale pentru binarele postgresql pentru ușurința noastră.

sudo useradd postgres
sudo passwd postgres
sudo mkdir -p /pgdatabase/data
sudo chown -R postgres: /pgdatabase/data
sudo sh -c "echo 'export PATH=$PATH:/opt/PostgreSQL/bin' > /etc/profile.d/postgres.sh"
source /etc/profile.d/postgres.sh 

6. Inițializarea bazei de date Postgres

Acum inițializați baza de date folosind următoarea comandă ca utilizator postgres înainte de a utiliza orice comandă postgres.

su postgres
initdb -D /pgdatabase/data/ -U postgres -W

Unde -D este locația acestui cluster de baze de date sau putem spune că este directorul de date în care dorim să inițializam clusterul de baze de date, -U pentru numele superutilizatorului bazei de date și -W pentru solicitarea parolei pentru superutilizatorul db.

Pentru mai multe informații și opțiuni ne putem referi la initdb --help.

7. Porniți Serviciul PostgreSQL

După inițializarea bazei de date, porniți clusterul bazei de date sau, dacă trebuie să schimbați portul sau să ascultați adresa serverului, editați fișierul /pgdatabase/data/postgresql.conf din directorul de date al serverul bazei de date.

nano /pgdatabase/data/postgresql.conf

Acum, porniți serviciul PostgreSQL.

pg_ctl -D /pgdatabase/data/ start

După pornirea bazei de date, verificați starea procesului serverului postgres utilizând următoarele comenzi ps și netstat.

ps -ef |grep -i postgres
netstat -apn |grep -i 51751

Putem vedea că clusterul bazei de date funcționează bine, iar jurnalele de pornire pot fi găsite în locația specificată cu opțiunea -l în timpul pornirii clusterului bazei de date.

pg_ctl -D /pgdatabase/data/ -l logfile start

8. Conectați-vă la PostgreSQL

Acum conectați-vă la clusterul de baze de date și creați o bază de date utilizând următoarele comenzi.

psql -p 5432
postgres=# create database test;
postgres=# \l to list all databases in cluster
postgres=# \q to quit form postgres console

Dacă sunteți în căutarea unui instrument grafic numit pgAdmin pentru a vă gestiona PostgreSQL, atunci urmați aceste ghiduri pentru a instala pgAdmin pe distribuția dvs. Linux.

Concluzie

Ați instalat cu succes PostgreSQL din sursă pe sistemul dumneavoastră Linux. Acest proces oferă flexibilitate și control asupra instalării dvs. PostgreSQL, permițându-vă să o adaptați cerințelor dvs. specifice.