1: Installer postgresql
yum install
postgresql postgresql-server
2: Créer le home directory de postgresql
mkdir /home/postgres
chown postgres:postgres /home/postgres
chown postgres:postgres /home/postgres
3: Initialiser le repertoire où postgresql va stocker ses bases de données et autres meta-data
su postgres
cd
initdb /home/postgres/data
exit
cd
initdb /home/postgres/data
exit
4: Configuration systemd
Ce qui suit a pour but de ne pas modifier la version d'origine de /usr/lib/systemd/system/postgresql.service
La solution proposé par postgresql est d'utiliser .include mais il faut savoir que cette méthode est obsolète (https://lists.fedoraproject.org/pipermail/devel/2014-July/200804.html)
Créer le fichier /etc/systemd/system/postgresql.service
avec ces 3 lignes (respectez la case)
.include
/usr/lib/systemd/system/postgresql.service
[Service]
Environment=PGDATA=/home/postgres/data
[Service]
Environment=PGDATA=/home/postgres/data
Si nécessaire ajouter la ligne suivante pour aussi changer
le port
Environment=PGPORT=2345
5: Démarrer le serveur postgresql à la main
systemctl daemon-reload (important)
systemctl start postgresql
verifier les log
systemctl status postgresql
6: Si tout va bien activer le démarrage automatique
systemctl enable postgresql
Reste à configurer /home/postgres/pg_hba.conf
Voir ces 3 posts:
- pg_hba (part1) accès local avec/sans mot de passe
- pg_hba (part2) accès via le réseau
- pg_hba + SSL cryptage
7: Installer les extensions
yum install postgresql-contrib
Toutes les extensions vont dans /usr/share/pgsql/extension
Pour installer une extension (par exemple adminpack) dans une base il faut se se connecter à cette base avec le user postgres et taper
CREATE EXTENSION adminpack;
8: Installer les .h
yum install postgresql-develNecessaire si on veut compiler un driver pour perl php ruby etc...
Par exemple quand un programme d’installation a besoin de libpq-fe.h