PostgreSQL/Installation
Mise en place du logiciel
modifierMachine hôte
modifierPostgreSQL est un logiciel libre multiplateforme, il se télécharge sur http://www.postgresql.org/download/.
Sur Ubuntu c'est le paquet :
sudo apt-get install postgresql
Une fois installé, il écoute le port 5432.
Pour administrer les bases, il est fournit avec le client lourd pgAdmin, mais il existe aussi une interface web appelée PhpPgAdmin.
Le site officiel fournit une longue documentation en français : http://docs.postgresqlfr.org/. C'est pourquoi ce livre se veut le plus pratique possible.
PostgreSQL se lance ensuite automatiquement à chaque démarrage de la machine, ce qui la ralentit significativement.
Pour éviter cela :
- Dans Linux, on peut déplacer /etc/init.d/postgresql.
- Dans Windows, exécuter services.msc, puis passer le service postgresql en démarrage manuel. Ensuite pour lancer le service à souhait (en tant qu'administrateur), créer un script PostgreSQL.cmd contenant le nom du service, par exemple :
net start postgresql-x64-9.5
pause
net stop postgresql-x64-9.5
Docker
modifierDans Docker compose :
postgres: image: 'postgres' environment: TZ: Europe/Paris POSTGRES_USER: 'root' POSTGRES_PASSWORD: "${DB_ROOT_PASSWORD}" POSTGRES_DB: 'root' ports: - "5432:5432"
pgadmin: image: dpage/pgadmin4 depends_on: - postgres environment: PGADMIN_DEFAULT_EMAIL: "${ADMIN_EMAIL}" PGADMIN_DEFAULT_PASSWORD: "${ADMIN_PASSWORD}" ports: - "8889:80"
Utilisation en shell via psql
modifierExemple pour choisir l'utilisateur à connecter en tapant son mot de passe[1] :
psql -U superadmin -W
Options les plus courantes :
- --username (-U)
- --host (-h) : si la base est sur un autre serveur, il faut le préciser avec.
- --port (-p)
- --dbname (-d)
Se connecter sans prompt
modifierVoici un exemple sans interaction de demande de mot de passe :
psql postgresql://my_user:my_password@my_postgres_server/my_database
Sinon, les accès peuvent aussi être stockés dans un fichier ~/.pgpass[2] :
echo "my_postgres_server:5432:my_database:my_user:my_password" >> ~/.pgpass && chmod 0600 ~/.pgpass
Utilisation par l'interface pgAdmin
modifierLancer le raccourci pgAdmin III fournit une interface complète de manipulation du SGBD :
Importer un dump
modifierEn shell[3] :
psql -h hostname -d databasename -U username -f mon_dump.sql
Dans la console SQL :
\i C:/database/mon_dump.sql