Environnement de déploiement
Système d'exploitation : openEuler 22.03 LTS SP3 x86_64. Version de PostgreSQL : 15.6.
Gestionnaires de paquets shell
Dans les distributions comme Fedora et RHEL, les outils YUM et DNF facilitent la gestion des paquets RPM. YUM résout les dépendances automatiquement, tandis que DNF, son successeur, améliore les performances et la gestion des dépendances via la bibliothèque Hawkey. Sur openEuler 22.03, DNF est l'outil par défautt.
Processus d'installation de PostgreSQL
Vérifiez d'abord les sources de logiciels :
cat /etc/dnf/dnf.conf
# Ou examinez les fichiers de dépôt :
vi /etc/yum.repos.d/openEuler.repo
Installez les dépendances requises pour la compilation :
sudo dnf install -y perl-ExtUtils-Embed readline-devel python3-devel pam-devel libxml2-devel libxslt-devel openldap-devel lz4-devel llvm-devel systemd-devel openssl-devel clang-devel flex-devel bison-devel glibc-devel gcc-c++ gcc cmake net-tools tar
Les outils flex et bison sont essentiels pour l'analyse lexicale et syntaxique.
Téléchargez et extrayez les sources :
mkdir -p /home/db_admin/pg_src && cd /home/db_admin/pg_src
wget https://ftp.postgresql.org/pub/source/v15.6/postgresql-15.6.tar.gz
tar -xvf postgresql-15.6.tar.gz
mkdir -p /opt/db_data/data
Compilez et installez PostgreSQL :
cd /home/db_admin/pg_src/postgresql-15.6
./configure --prefix=/opt/db_data --with-python --with-openssl --with-libxml
make -j 4 world && make install-world
En cas d'échec, nettoyez avec make distclean.
Vérifiez l'installation :
ls -l /opt/db_data/
Les répertoires clés incluent bin (exécutables), lib (bibliothèques), et data (données).
Configuration des variables d'environnement
Créez un fichier temporaire :
echo "export PGDATA=/opt/db_data/data
export PATH=/opt/db_data/bin:$PATH" > pg_env.sh
source pg_env.sh
Pour une configuration perisstante, modifiez ~/.bash_profile.
Initialisation de la base de données
Créez un utilisateur dédié :
sudo useradd pg_user && sudo passwd pg_user
sudo chown -R pg_user:pg_user /opt/db_data/data
su pg_user
initdb -D /opt/db_data/data -U pg_user
pg_ctl start -D /opt/db_data/data -l /var/log/pg_start.log
Paramétrage de PostgreSQL
Éditez le fichier de configuration :
vi /opt/db_data/data/postgresql.conf
Modiifez les lignes suivantes :
listen_addresses = '0.0.0.0'
port = 5433
logging_collector = on
log_directory = 'logs'
Gestion du service PostgreSQL
Commandes de base :
pg_ctl start -D /opt/db_data/data
pg_ctl stop -D /opt/db_data/data -m fast
pg_ctl restart -D /opt/db_data/data
pg_ctl status -D /opt/db_data/data
Vérifiez le statut via des méthodes alternatives :
ps aux | grep postgres
pg_isready -p 5433
netstat -tlnp | grep 5433
Connexion à la base de données
Utilisez psql avec différents formats :
psql -h localhost -p 5433 -U pg_user -d postgres
psql postgresql://pg_user:password@127.0.0.1:5433/postgres
Pour quitter, tapez \q.
Commandes utiles
Consultez l'aide pour plus d'options :
pg_ctl --help
postgres --help
psql --help
Vérifiez la version installée :
psql -c "SELECT version();"
postgres --version