J'installe postgresql 10, je pousuis par la création d'un utilisateur et d'une base de données (bdtest).
Ensuite j'effectue quelques petits changements sur les fichiers pg_hba.conf et pg_ident.conf (situés dans /etc/postgresql/10/main/ ou ailleurs, ça dépend des distributions). Ces changements nécessitent un redémarrage de postgresql.
$ sudo systemctl restart postgresql
Problème:
$ psql bdtest
psql: could not connect to server: Aucun fichier ou dossier de ce type
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
Pas de soucis, la commande suivante va me donner les info adéquates:
$ systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Wed 2020-05-27 17:04:51 +04; 2min 20s ago
Process: 3277 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 3277 (code=exited, status=0/SUCCESS)
mai 27 17:04:51 michel-rigel systemd[1]: Starting PostgreSQL RDBMS...
mai 27 17:04:51 michel-rigel systemd[1]: Started PostgreSQL RDBMS.
Tous semble normal.
Il y a quand même un gros problème:
$ ss -nlt | grep 5432
Aucun retour!
Je continue à investiguer:
$ systemctl list-units postgresql*
UNIT LOAD ACTIVE SUB DESCRIPTION
postgresql.service loaded active exited PostgreSQL RDBMS
● postgresql@10-main.service loaded failed failed PostgreSQL Cluster 10-main
En fait un deuxième service s'est planté.
La commande
$ systemctl status postgresql@10-main
donne maintenant les infos qui permettent de corriger le problème (une erreur dans pg_hba.conf).
Je corrige l'erreur puis
$ sudo systemctl restart postgresql
et ça repart.