L’installation et la configuration de Postgresql sur mac avec homebrew peut présenter quelques difficultés… Rien d’insurmontable, mais sans info ce peut être décourageant.

Prérequis :

Installation :

Mise à jour de Homebrew

brew update

On confirme que tout va bien :

brew doctor

On install Postgres :

brew install postgresql

Lors de l’installation, vous vous retrouvez avec un sacré paquet de lignes dans le terminal, un peu comme ceci :
installer postgreSQL sur mac avec Homebrew

Les informations les plus importantes sont : BuildNotes, Create/Upgrade a database et Start/Stop PostgreSQL. Veuillez suivre ces informations à la lettre.

Création / Mise à jour des bases de données

Si c’est la première installation de Postgres, vous devez créer une base à l’aide la commande suivante :

inidb /usr/local/var/postgres -E utf8

Il est préférable de copier/coller la ligne depuis le terminal au cas ou la commande viendrait à changer !

Installation de Lunchy

 gem install lunchy 

Start/Stop Postgres

Encore une fois, je copie/colle les commandes depuis le terminal. Notez bien que la deuxième commande dépend de la version de postgres installée sur ma machine. Si la version a changé, la commande ci-dessous ne fonctionnera pas, vous devez vous assurer que vous copiez bien la ligne depuis le terminal.

mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/postgresql/9.2.4/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/

Puisque nous allons utiliser lunchy, cette dernière commande est inutile :

launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

À la place, nous allons utiliser la commande suivante :

lunchy start postgres

À cet instant, vous pourriez penser que tout est prêt, eh bien non !

Lors de l’installation de PostgreSQL à l’aide de homebrew, le script ne créé pas l’utilisateur posgres. Vous devez utiliser l’utilisateur et le mot de passe du compte qui a servi à l’installation de postgres. C’est tout à fait acceptable de laisser cela ainsi dans un environnement de développement, mais n’oubliez pas de changer cela si votre environnement est production !

Instrumentation

Installez instrumentation pour que pgAdmin ne passe pas son temps à vous crier dessus, lancez la commande suivante avec le même utilisateur qui a installé Postgres :

psql postgres -c 'CREATE EXTENSION "adminpack";'

Tester son installation

Installer et lancer pgAdmin, ajouter une base de données avec votre username/password

Merci à Russel Brooks et à Moncef Belyamani