Nous partageons ici comment installer PostgreSQL v15 sur windows 11. Nous mettons ici toutes les copie d’écran pour l’installation. L’installation a présenté des difficultés dûe à un message imparfait dans l’assistant au niveau de la page demandant le mot de passe.
Utilisation de l’installeur PostgreSQL sur Windows
Nous allons sur le site de PostgreSQL pour trouver la méthode pour installer PostgreSQL. Le site nous propose d’aller sur enterprisedb.com, ou nous trouvons toutes les versions de PostgreSQL.
Nous prenons la dernière version de PostgreSQL : v15.4
Lorsque nous cliquons en (1), l’installeur se télécharge dans notre dossier téléchargement.
- postgresql-15.4-1-windows-x64.exe
L’installer PostgreSQL pour Windows avec l’installeur
Nous lançons l’installation.
Nous utiliserons la ligne de commande pour PostgreSQL donc nous laissons Command Line Tools
Vous noterez que l’installeur nous demande un mot de passe pour un compte qui n’est pas identifié dans la page. Nous verrons plus loin que le compte est postgres contrairement à ce qui se passe dans l’installation sur macOS avec homebrew.
En outre, il n’est malheureusement pas possible de contrôler le mot de passe en l’affichant.
Nous mettons postgres comme mot de passe pour le ***unknown variable superaccoun***
Une recherche sur le forum postgres précise que le nom du super utilisateur ***Unknown_variable_superaccount*** sera identifié dans la page récapitulative de l’installation.
Voir le commentaire sur le forum
Nous laissons le port 5432
Nous gardons la locale par défaut pour PostgreSQL
La page de récapitulation des paramètres :
Le récapitulatif des paramètres d’installation avec des no de ligne :
summary.installation.directory: C:\Program Files\PostgreSQL\15 summary.server.installation.directory: C:\Program Files\PostgreSQL\15 summary.data.directory: C:\Program Files\PostgreSQL\15\data summary.database.port: 5432 summary.database.superuser: postgres summary.serviceaccount: NT AUTHORITY\NetworkService summary.databaseservice: postgresql-x64-15 summary.clt.installation.directory: C:\Program Files\PostgreSQL\15 summary.pgadmin.installation.directory: C:\Program Files\PostgreSQL\15\pgAdmin 4 summary.sbp.installation.directory: C:\Program Files\PostgreSQL\15 summary.installation.logfile: C:\Users\berou\AppData\Local\Temp\install-postgresql.log
nous voyons que nous avons bien pour summary.databasse.superuser : postgres [ligne 5].
Nous avons fini d’installer PosgreSQL avec pour compte supposé du super-administrateur postgres/postgres.
L’instalaltion de PostgreSQL sur Windows est terminée
Nous ne connaissons pas Stack Builder ni a quoi cela sert, donc nous faisons le choix de ne pas l’installer.
L’installation de PostgreSQL se termine.
Utilisation de psql, PostgreSQL en ligne de commande pour Windows
Nous allons utiliser psql en ligne de commande pour vérifier les utilisateurs enregistrés dans notre base de données.
C:\Users\berou>psql 'psql' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes. C:\Users\berou>
la commande psql n’est pas connu. Il s’agit d’un exécutable de Postgres. Nous le retrouvons dans le dossier Postgres :
Nous pouvons lancer psql en nous plaçant dans le répertoire PostgreSQL/bin.
Nous nous attendions à avoir pour compte utilisateur postgres, psql nous demande le mot de passe de l’utilisateur berou. Cela est trompeur. En fait en utilisant l’option -U (voir ci-dessous), nous pouvons accéder à Postgres.
Le mot de passe saisie postgres est reconnu pour l’utilisateur postgres, pas pour berou. Contrairement à ce qui se passe dans l’installation Mac, il n’y a pas de compte créé pour l’utilisateur du nom de la machine (ici berou).
C:\Users\berou>cd C:\Program Files\PostgreSQL\15\bin C:\Program Files\PostgreSQL\15\bin>psql Mot de passe pour l'utilisateur berou : psql: erreur : la connexion au serveur sur « localhost » (::1), port 5432 a échoué : FATAL: authentification par mot de passe échouée pour l'utilisateur « berou » C:\Program Files\PostgreSQL\15\bin>
L’utilisateur postgres est le seul créé. Le compte utilisateur windows berou n’existe pas dans Postgres.
psql: erreur : la connexion au serveur sur « localhost » (::1), port 5432 a échoué : FATAL: authentification par mot de passe échouée pour l'utilisateur « berou »
La base de données PostgreSQL est prête. Pour se connecter avec psql il convient d’utiliser l’option -U.
Utiliser la commande psql avec l’option -U
Pour parvenir à se connecter, nous utilisons l’option -U :
- psql -U userName
- avec userName : postgres
C:\Users\berou>psql -U postgres Mot de passe pour l'utilisateur postgres : psql (15.4) Attention : l'encodage console (850) diffère de l'encodage Windows (1252). Les caractères 8 bits peuvent ne pas fonctionner correctement. Voir la section « Notes aux utilisateurs de Windows » de la page référence de psql pour les détails. Saisissez « help » pour l'aide. postgres=#
Ajout dans le path du chemin vers psql
Pour simplifier le travail avec psql, nous devons ajouter le chemin vers psql dans le path.
Vérifier les utilisateurs enregistrés dans la base de données
Pour voir la liste des utilisateurs, nous avons la commande \du
C:\Users\berou>psql -U postgres Mot de passe pour l'utilisateur postgres : psql (15.4) Attention : l'encodage console (850) diffère de l'encodage Windows (1252). Les caractères 8 bits peuvent ne pas fonctionner correctement. Voir la section « Notes aux utilisateurs de Windows » de la page référence de psql pour les détails. Saisissez « help » pour l'aide. postgres=# \du Liste des r¶les Nom du r¶le | Attributs | Membre de -------------+---------------------------------------------------------------------------------+----------- postgres | Superutilisateur, CrÚer un r¶le, CrÚer une base, RÚplication, Contournement RLS | {} postgres=# \q C:\Users\berou>
Nous constatons que l’installation n’est pas identique sur Mac et sur Windows au niveau des utilisateurs enregistrés. Sur Mac, avec homebrew, nous avons bien le super-utilisateur portant le nom du compte utilisateur du Mac. Nous avons dû créé le compte postgres/postgres en nous connectant avec le superutilisateur.
Pour voir l’installation de PostgreSQL sur Mac, vous pouvez lire l’article sur l’installation de Phoenix sur Mac Book
Conclusion : L’installation de PostgreSQL sur Windows
L’installeur de PostgreSQL pour Windows 11 fonctionne.
Il serait bien de corriger le défaut dans la page de saisie du mot de passe, et d’harmoniser les deux version macOS et Windows.