Postgresql - Commandes et guide complet CLI pour streaming de données

🏷️ Lignes des commandes 📅 07/04/2026 16:00:00 👤 Mezgani said
Bd Postgresql Psql Pgconfig Pgcluster Streaming Realtime Shell Admin Postgresql Client Postgresql

Maîtrisez PostgreSQL pour le streaming de données en temps réel. Commandes CLI, configuration et gestion de clusters PostgreSQL pour applications modernes.

Ligne de commande :
psql
Description :

Client interactif PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -d
  • --dbname
  • -W
  • --password
  • -w
  • --no-password
  • -c
  • --command
  • -f
  • --file
  • -l
  • --list
  • -E
  • --echo-hidden
  • -q
  • --quiet
  • -v
  • --variable
  • -X
  • --no-psqlrc
  • -1
  • --single-transaction
  • -A
  • --no-align
  • -t
  • --tuples-only
  • -F
  • --field-separator
  • -H
  • --html
  • -P
  • --pset
  • -R
  • --record-separator
  • -x
  • --expanded
  • -z
  • --field-separator-zero
  • -0
  • --record-separator-zero
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
psql -U postgres
Description :

Connexion en tant que superutilisateur postgres

Options :
  • -h
  • -p
  • -d

Ligne de commande :
psql -h localhost -p 5432 -U monuser -d mabase
Description :

Connexion avec tous les paramètres

Options :
  • -W

Ligne de commande :
psql -d mabase -c "SELECT * FROM users"
Description :

Exécute une commande SQL et quitte

Options :
  • -c
  • --command

Ligne de commande :
psql -d mabase -f script.sql
Description :

Exécute un fichier SQL

Options :
  • -f
  • --file
  • -1
  • --single-transaction

Ligne de commande :
psql -l
Description :

Liste toutes les bases de données

Options :
  • -l
  • --list

Ligne de commande :
psql -d mabase -A -t -F ',' -c "SELECT * FROM users" > export.csv
Description :

Exporte en CSV

Options :
  • -A
  • -t
  • -F

Ligne de commande :
createdb
Description :

Crée une base de données PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -e
  • --echo
  • -O
  • --owner
  • -T
  • --template
  • -E
  • --encoding
  • -l
  • --locale
  • --lc-collate
  • --lc-ctype
  • --tablespace
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
createdb -U postgres mabase
Description :

Crée une base de données

Options :
  • -O
  • --owner
  • -E
  • --encoding
  • -T
  • --template

Ligne de commande :
createdb -U postgres -O monuser -E UTF8 mabase
Description :

Crée une base avec propriétaire et encodage

Options :
  • -O
  • -E

Ligne de commande :
createdb -U postgres -T template0 mabase
Description :

Crée une base depuis template0

Options :
  • -T
  • --template

Ligne de commande :
dropdb
Description :

Supprime une base de données PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -e
  • --echo
  • -i
  • --interactive
  • -f
  • --force
  • --if-exists
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
dropdb -U postgres mabase
Description :

Supprime une base de données

Options :
  • -f
  • --force
  • --if-exists
  • -i
  • --interactive

Ligne de commande :
dropdb -U postgres --if-exists mabase
Description :

Supprime si elle existe

Options :
  • --if-exists

Ligne de commande :
dropdb -U postgres -f mabase
Description :

Force la suppression (déconnecte les utilisateurs)

Options :
  • -f
  • --force

Ligne de commande :
pg_dump
Description :

Sauvegarde une base de données PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -d
  • --dbname
  • -f
  • --file
  • -F
  • --format
  • -j
  • --jobs
  • -v
  • --verbose
  • -Z
  • --compress
  • -a
  • --data-only
  • -b
  • --blobs
  • -B
  • --no-blobs
  • -c
  • --clean
  • -C
  • --create
  • -E
  • --encoding
  • -n
  • --schema
  • -N
  • --exclude-schema
  • -o
  • --oids
  • -O
  • --no-owner
  • -R
  • --no-reconnect
  • -s
  • --schema-only
  • -S
  • --superuser
  • -t
  • --table
  • -T
  • --exclude-table
  • -x
  • --no-privileges
  • --binary-upgrade
  • --column-inserts
  • --disable-dollar-quoting
  • --disable-triggers
  • --enable-row-security
  • --exclude-table-data
  • --extra-float-digits
  • --if-exists
  • --inserts
  • --load-via-partition-root
  • --lock-wait-timeout
  • --no-comments
  • --no-publications
  • --no-security-labels
  • --no-subscriptions
  • --no-sync
  • --no-table-access-method
  • --no-tablespaces
  • --no-toast-compression
  • --no-unlogged-table-data
  • --on-conflict-do-nothing
  • --quote-all-identifiers
  • --rows-per-insert
  • --section
  • --serializable-deferrable
  • --snapshot
  • --strict-names
  • --use-set-session-authorization
  • --verbose
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_dump -U postgres mabase > sauvegarde.sql
Description :

Sauvegarde au format SQL texte

Options :
  • -f
  • --file

Ligne de commande :
pg_dump -U postgres -F c -f sauvegarde.dump mabase
Description :

Sauvegarde au format personnalisé (compressé)

Options :
  • -F
  • --format

Ligne de commande :
pg_dump -U postgres -F d -j 4 -f /backup/ mabase
Description :

Sauvegarde parallèle (répertoire, 4 jobs)

Options :
  • -F
  • -j
  • --jobs

Ligne de commande :
pg_dump -U postgres -F t -f sauvegarde.tar mabase
Description :

Sauvegarde au format tar

Options :
  • -F
  • --format

Ligne de commande :
pg_dump -U postgres -s mabase > schema.sql
Description :

Sauvegarde uniquement le schéma (sans données)

Options :
  • -s
  • --schema-only

Ligne de commande :
pg_dump -U postgres -a mabase > data.sql
Description :

Sauvegarde uniquement les données

Options :
  • -a
  • --data-only

Ligne de commande :
pg_dump -U postgres -t users mabase > users.sql
Description :

Sauvegarde une table spécifique

Options :
  • -t
  • --table

Ligne de commande :
pg_dump -U postgres -T logs mabase > sans_logs.sql
Description :

Exclut une table de la sauvegarde

Options :
  • -T
  • --exclude-table

Ligne de commande :
pg_dump -U postgres -n public mabase > schema_public.sql
Description :

Sauvegarde un schéma spécifique

Options :
  • -n
  • --schema

Ligne de commande :
pg_dump -U postgres --inserts mabase > sauvegarde_inserts.sql
Description :

Utilise INSERT au lieu de COPY

Options :
  • --inserts
  • --column-inserts

Ligne de commande :
pg_dump -U postgres -Z 9 -F c -f sauvegarde.dump mabase
Description :

Compression maximale (9)

Options :
  • -Z
  • --compress

Ligne de commande :
pg_dumpall
Description :

Sauvegarde toutes les bases de données d'un cluster

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -f
  • --file
  • -v
  • --verbose
  • -c
  • --clean
  • -g
  • --globals-only
  • -o
  • --oids
  • -O
  • --no-owner
  • -r
  • --roles-only
  • -s
  • --schema-only
  • -S
  • --superuser
  • -t
  • --tablespaces-only
  • -x
  • --no-privileges
  • --binary-upgrade
  • --disable-triggers
  • --exclude-database
  • --extra-float-digits
  • --if-exists
  • --inserts
  • --lock-wait-timeout
  • --no-comments
  • --no-role-passwords
  • --no-security-labels
  • --no-subscriptions
  • --no-sync
  • --no-tablespaces
  • --no-unlogged-table-data
  • --on-conflict-do-nothing
  • --quote-all-identifiers
  • --rows-per-insert
  • --use-set-session-authorization
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_dumpall -U postgres > toutes_bases.sql
Description :

Sauvegarde tout le cluster

Options :
  • -f
  • --file

Ligne de commande :
pg_dumpall -U postgres -g > globals.sql
Description :

Sauvegarde uniquement les objets globaux (rôles, tablespaces)

Options :
  • -g
  • --globals-only

Ligne de commande :
pg_dumpall -U postgres -r > roles.sql
Description :

Sauvegarde uniquement les rôles

Options :
  • -r
  • --roles-only

Ligne de commande :
pg_dumpall -U postgres -t > tablespaces.sql
Description :

Sauvegarde uniquement les tablespaces

Options :
  • -t
  • --tablespaces-only

Ligne de commande :
pg_restore
Description :

Restaure une sauvegarde PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -d
  • --dbname
  • -f
  • --file
  • -v
  • --verbose
  • -a
  • --data-only
  • -c
  • --clean
  • -C
  • --create
  • -e
  • --exit-on-error
  • -I
  • --index
  • -j
  • --jobs
  • -l
  • --list
  • -L
  • --use-list
  • -n
  • --schema
  • -N
  • --exclude-schema
  • -O
  • --no-owner
  • -P
  • --function
  • -R
  • --no-reconnect
  • -s
  • --schema-only
  • -S
  • --superuser
  • -t
  • --table
  • -T
  • --trigger
  • -x
  • --no-privileges
  • --disable-triggers
  • --enable-row-security
  • --if-exists
  • --no-comments
  • --no-data-for-failed-tables
  • --no-publications
  • --no-security-labels
  • --no-subscriptions
  • --no-table-access-method
  • --no-tablespaces
  • --role
  • --section
  • --strict-names
  • --use-set-session-authorization
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_restore -U postgres -d mabase sauvegarde.dump
Description :

Restaure une sauvegarde au format personnalisé

Options :
  • -d
  • --dbname

Ligne de commande :
pg_restore -U postgres -d mabase -c sauvegarde.dump
Description :

Restaure en nettoyant d'abord (DROP)

Options :
  • -c
  • --clean

Ligne de commande :
pg_restore -U postgres -d mabase -C sauvegarde.dump
Description :

Crée la base avant restauration

Options :
  • -C
  • --create

Ligne de commande :
pg_restore -U postgres -d mabase -j 4 sauvegarde.dump
Description :

Restaure en parallèle (4 jobs)

Options :
  • -j
  • --jobs

Ligne de commande :
pg_restore -U postgres -d mabase -t users sauvegarde.dump
Description :

Restaure une table spécifique

Options :
  • -t
  • --table

Ligne de commande :
pg_restore -U postgres -d mabase -n public sauvegarde.dump
Description :

Restaure un schéma spécifique

Options :
  • -n
  • --schema

Ligne de commande :
pg_restore -U postgres -l sauvegarde.dump > liste.txt
Description :

Liste le contenu de la sauvegarde

Options :
  • -l
  • --list

Ligne de commande :
pg_restore -U postgres -d mabase -L liste.txt sauvegarde.dump
Description :

Restaure selon une liste éditée

Options :
  • -L
  • --use-list

Ligne de commande :
pg_restore -U postgres -d mabase -a sauvegarde.dump
Description :

Restaure uniquement les données

Options :
  • -a
  • --data-only

Ligne de commande :
pg_restore -U postgres -d mabase -s sauvegarde.dump
Description :

Restaure uniquement le schéma

Options :
  • -s
  • --schema-only

Ligne de commande :
pg_ctl
Description :

Contrôle le serveur PostgreSQL

Options :
  • -D
  • --pgdata
  • -l
  • --log
  • -m
  • --mode
  • -t
  • --timeout
  • -w
  • --wait
  • -W
  • --no-wait
  • -s
  • --silent
  • -o
  • --options
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data start
Description :

Démarre le serveur PostgreSQL

Options :
  • -l
  • --log
  • -o
  • --options
  • -w
  • --wait

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data stop
Description :

Arrête le serveur PostgreSQL

Options :
  • -m
  • --mode
  • -t
  • --timeout
  • -W
  • --no-wait

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data stop -m fast
Description :

Arrêt rapide (annule les transactions)

Options :
  • -m
  • --mode

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data stop -m immediate
Description :

Arrêt immédiat (nécessite recovery)

Options :
  • -m
  • --mode

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data restart
Description :

Redémarre le serveur PostgreSQL

Options :
  • -m
  • --mode
  • -t
  • --timeout

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data reload
Description :

Recharge la configuration sans redémarrer

Options :
  • -s
  • --silent

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data status
Description :

Affiche le statut du serveur

Ligne de commande :
pg_ctl -D /var/lib/postgresql/data promote
Description :

Promeut un serveur standby en primary

Options :
  • -w
  • --wait
  • -W
  • --no-wait

Ligne de commande :
initdb
Description :

Initialise un nouveau cluster PostgreSQL

Options :
  • -D
  • --pgdata
  • -U
  • --username
  • -E
  • --encoding
  • --locale
  • --lc-collate
  • --lc-ctype
  • --lc-messages
  • --lc-monetary
  • --lc-numeric
  • --lc-time
  • -A
  • --auth
  • --auth-host
  • --auth-local
  • -k
  • --data-checksums
  • --pwfile
  • --waldir
  • -X
  • --waldir
  • -S
  • --sync-only
  • -T
  • --text-search-config
  • -W
  • --pwprompt
  • -d
  • --debug
  • -L
  • --logfile
  • -n
  • --no-clean
  • -N
  • --no-sync
  • --show
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
initdb -D /var/lib/postgresql/data -U postgres -E UTF8 --locale=fr_FR.UTF-8
Description :

Initialise un cluster avec encodage UTF-8

Options :
  • -D
  • -U
  • -E
  • --locale

Ligne de commande :
initdb -D /var/lib/postgresql/data -k
Description :

Initialise avec checksums de données

Options :
  • -k
  • --data-checksums

Ligne de commande :
pg_checksums
Description :

Active/désactive/vérifie les checksums

Options :
  • -D
  • --pgdata
  • -c
  • --check
  • -e
  • --enable
  • -d
  • --disable
  • -f
  • --filenode
  • -v
  • --verbose
  • -P
  • --progress
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_checksums -D /var/lib/postgresql/data --check
Description :

Vérifie les checksums

Options :
  • --check
  • -v
  • --verbose
  • -P
  • --progress

Ligne de commande :
pg_checksums -D /var/lib/postgresql/data --enable
Description :

Active les checksums (serveur arrêté)

Options :
  • --enable
  • -P
  • --progress

Ligne de commande :
pg_basebackup
Description :

Sauvegarde binaire d'un cluster PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -D
  • --pgdata
  • -F
  • --format
  • -r
  • --max-rate
  • -R
  • --write-recovery-conf
  • -S
  • --slot
  • -T
  • --tablespace-mapping
  • -X
  • --wal-method
  • -z
  • --gzip
  • -Z
  • --compress
  • -c
  • --checkpoint
  • -C
  • --create-slot
  • -l
  • --label
  • -n
  • --no-clean
  • -N
  • --no-sync
  • -P
  • --progress
  • -v
  • --verbose
  • --no-slot
  • --no-verify-checksums
  • --waldir
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_basebackup -h localhost -U postgres -D /backup/base -F t -z -P
Description :

Sauvegarde base compressée avec progression

Options :
  • -h
  • -U
  • -D
  • -F
  • -z
  • -P

Ligne de commande :
pg_basebackup -h localhost -U postgres -D /backup/base -R -S slot_replication
Description :

Sauvegarde pour standby avec slot

Options :
  • -R
  • -S
  • --slot

Ligne de commande :
pg_basebackup -h localhost -U postgres -D /backup/base -X stream
Description :

Inclut les WAL en streaming

Options :
  • -X
  • --wal-method

Ligne de commande :
pg_receivewal
Description :

Reçoit les WAL en streaming

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -D
  • --dir
  • -n
  • --no-loop
  • -s
  • --status-interval
  • -S
  • --slot
  • -v
  • --verbose
  • -Z
  • --compress
  • -c
  • --create-slot
  • -d
  • --drop-slot
  • --endpos
  • --no-sync
  • --synchronous
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_receivewal -h localhost -U postgres -D /wal/archive -S slot1 -c
Description :

Reçoit les WAL avec création de slot

Options :
  • -D
  • -S
  • -c
  • --create-slot

Ligne de commande :
pg_receivewal -h localhost -U postgres -D /wal/archive -s 10
Description :

Affiche le statut toutes les 10 secondes

Options :
  • -s
  • --status-interval

Ligne de commande :
pg_receivewal -h localhost -U postgres -D /wal/archive -Z 9
Description :

Compression maximale des WAL

Options :
  • -Z
  • --compress

Ligne de commande :
pg_rewind
Description :

Synchronise un ancien primary avec le nouveau

Options :
  • -D
  • --target-pgdata
  • --source-pgdata
  • --source-server
  • -P
  • --progress
  • -n
  • --dry-run
  • -R
  • --write-recovery-conf
  • --restore-target-wal
  • --no-sync
  • --no-ensure-shutdown
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_rewind --target-pgdata=/var/lib/postgresql/data --source-server="host=localhost user=postgres" -P
Description :

Resynchronise un ancien primary

Options :
  • --target-pgdata
  • --source-server
  • -P
  • --dry-run

Ligne de commande :
pg_upgrade
Description :

Met à niveau un cluster PostgreSQL

Options :
  • -b
  • --old-bindir
  • -B
  • --new-bindir
  • -d
  • --old-datadir
  • -D
  • --new-datadir
  • -c
  • --check
  • -k
  • --link
  • -r
  • --retain
  • -p
  • --old-port
  • -P
  • --new-port
  • -U
  • --username
  • -v
  • --verbose
  • -j
  • --jobs
  • --clone
  • --copy
  • -o
  • --old-options
  • -O
  • --new-options
  • --socketdir
  • --sync-method
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_upgrade -b /usr/lib/postgresql/14/bin -B /usr/lib/postgresql/15/bin -d /var/lib/postgresql/14/data -D /var/lib/postgresql/15/data -c
Description :

Vérifie la mise à niveau possible

Options :
  • -c
  • --check

Ligne de commande :
pg_upgrade -b /usr/lib/postgresql/14/bin -B /usr/lib/postgresql/15/bin -d /var/lib/postgresql/14/data -D /var/lib/postgresql/15/data -k -j 4
Description :

Mise à niveau avec hard links et 4 jobs

Options :
  • -k
  • --link
  • -j
  • --jobs

Ligne de commande :
vacuumdb
Description :

Nettoie et analyse une base PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -d
  • --dbname
  • -a
  • --all
  • -e
  • --echo
  • -f
  • --full
  • -F
  • --freeze
  • -j
  • --jobs
  • -q
  • --quiet
  • -t
  • --table
  • -v
  • --verbose
  • -z
  • --analyze
  • -Z
  • --analyze-only
  • --analyze-in-stages
  • --disable-page-skipping
  • --min-mxid-age
  • --min-xid-age
  • --no-process-main
  • --no-process-toast
  • --parallel
  • --process-main
  • --process-toast
  • --skip-locked
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
vacuumdb -U postgres -d mabase
Description :

Lance VACUUM sur une base

Options :
  • -d
  • --dbname
  • -v
  • --verbose

Ligne de commande :
vacuumdb -U postgres -d mabase -f
Description :

VACUUM FULL (récupère l'espace disque)

Options :
  • -f
  • --full

Ligne de commande :
vacuumdb -U postgres -d mabase -z
Description :

VACUUM et ANALYZE

Options :
  • -z
  • --analyze

Ligne de commande :
vacuumdb -U postgres -d mabase -Z
Description :

ANALYZE uniquement

Options :
  • -Z
  • --analyze-only

Ligne de commande :
vacuumdb -U postgres -d mabase -t users
Description :

VACUUM sur une table spécifique

Options :
  • -t
  • --table

Ligne de commande :
vacuumdb -U postgres -a
Description :

VACUUM sur toutes les bases

Options :
  • -a
  • --all

Ligne de commande :
vacuumdb -U postgres -d mabase -j 4
Description :

VACUUM parallèle (4 workers)

Options :
  • -j
  • --jobs

Ligne de commande :
vacuumdb -U postgres -d mabase --freeze
Description :

VACUUM FREEZE (prévient le wraparound)

Options :
  • -F
  • --freeze

Ligne de commande :
reindexdb
Description :

Reconstruit les index d'une base PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -d
  • --dbname
  • -a
  • --all
  • -e
  • --echo
  • -i
  • --index
  • -j
  • --jobs
  • -q
  • --quiet
  • -s
  • --system
  • -S
  • --schema
  • -t
  • --table
  • -v
  • --verbose
  • --concurrently
  • --tablespace
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
reindexdb -U postgres -d mabase
Description :

Reconstruit tous les index d'une base

Options :
  • -d
  • --dbname
  • -v
  • --verbose

Ligne de commande :
reindexdb -U postgres -d mabase -t users
Description :

Reconstruit les index d'une table

Options :
  • -t
  • --table

Ligne de commande :
reindexdb -U postgres -d mabase -i idx_users_email
Description :

Reconstruit un index spécifique

Options :
  • -i
  • --index

Ligne de commande :
reindexdb -U postgres -d mabase -S public
Description :

Reconstruit les index d'un schéma

Options :
  • -S
  • --schema

Ligne de commande :
reindexdb -U postgres -d mabase -s
Description :

Reconstruit les index système

Options :
  • -s
  • --system

Ligne de commande :
reindexdb -U postgres -d mabase --concurrently -t users
Description :

Reconstruit sans bloquer les écritures

Options :
  • --concurrently

Ligne de commande :
clusterdb
Description :

Réorganise physiquement les tables selon un index

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -W
  • --password
  • -d
  • --dbname
  • -a
  • --all
  • -e
  • --echo
  • -q
  • --quiet
  • -t
  • --table
  • -v
  • --verbose
  • --verbose
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
clusterdb -U postgres -d mabase -t users
Description :

Cluster une table selon son index cluster

Options :
  • -d
  • -t
  • -v
  • --verbose

Ligne de commande :
pg_isready
Description :

Vérifie l'état de connexion du serveur

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -d
  • --dbname
  • -q
  • --quiet
  • -t
  • --timeout
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_isready -h localhost -p 5432
Description :

Vérifie si le serveur accepte les connexions

Options :
  • -h
  • -p
  • -q
  • --quiet

Ligne de commande :
pg_isready -h localhost -p 5432 -t 5
Description :

Timeout de 5 secondes

Options :
  • -t
  • --timeout

Ligne de commande :
pgbench
Description :

Outil de benchmark PostgreSQL

Options :
  • -h
  • --host
  • -p
  • --port
  • -U
  • --username
  • -d
  • --dbname
  • -i
  • --initialize
  • -I
  • --init-steps
  • -F
  • --fillfactor
  • -n
  • --no-vacuum
  • -q
  • --quiet
  • -s
  • --scale
  • --foreign-keys
  • --index-tablespace
  • --partition-method
  • --partitions
  • --tablespace
  • --unlogged-tables
  • -c
  • --client
  • -j
  • --jobs
  • -t
  • --transactions
  • -T
  • --time
  • -P
  • --progress
  • -r
  • --report-per-command
  • -R
  • --rate
  • -L
  • --latency-limit
  • -f
  • --file
  • -b
  • --builtin
  • -M
  • --protocol
  • -N
  • --skip-some-updates
  • --aggregate-interval
  • --failures-detailed
  • --log-prefix
  • --max-tries
  • --no-vacuum
  • --random-seed
  • --sampling-rate
  • --show-script
  • -v
  • --vacuum-all
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pgbench -i -s 10 -U postgres mabase
Description :

Initialise une base de test (scale 10)

Options :
  • -i
  • --initialize
  • -s
  • --scale

Ligne de commande :
pgbench -c 10 -j 2 -T 60 -U postgres mabase
Description :

Benchmark 10 clients, 2 threads, 60 secondes

Options :
  • -c
  • --client
  • -j
  • --jobs
  • -T
  • --time

Ligne de commande :
pgbench -c 10 -t 1000 -U postgres mabase
Description :

1000 transactions par client

Options :
  • -c
  • -t
  • --transactions

Ligne de commande :
pgbench -c 10 -T 60 -P 10 -U postgres mabase
Description :

Affiche la progression toutes les 10s

Options :
  • -P
  • --progress

Ligne de commande :
pgbench -c 10 -T 60 -f script.sql -U postgres mabase
Description :

Utilise un script personnalisé

Options :
  • -f
  • --file

Ligne de commande :
pgbench -b tpcb-like -c 10 -T 60 -U postgres mabase
Description :

Benchmark TPC-B like

Options :
  • -b
  • --builtin

Ligne de commande :
pg_config
Description :

Affiche les informations d'installation de PostgreSQL

Options :
  • --bindir
  • --docdir
  • --htmldir
  • --includedir
  • --pkgincludedir
  • --includedir-server
  • --libdir
  • --pkglibdir
  • --localedir
  • --mandir
  • --sharedir
  • --sysconfdir
  • --pgxs
  • --configure
  • --cc
  • --cppflags
  • --cflags
  • --cflags_sl
  • --ldflags
  • --ldflags_ex
  • --ldflags_sl
  • --libs
  • --version
  • -?
  • --help

Ligne de commande :
pg_config --version
Description :

Affiche la version de PostgreSQL

Ligne de commande :
pg_config --bindir
Description :

Affiche le répertoire des exécutables

Ligne de commande :
pg_config --libdir
Description :

Affiche le répertoire des bibliothèques

Ligne de commande :
postgres
Description :

Démarre le serveur PostgreSQL (mode single-user)

Options :
  • -D
  • --pgdata
  • -c
  • --config-file
  • -h
  • --host
  • -p
  • --port
  • -B
  • --shared-buffers
  • -d
  • --debug-level
  • -e
  • --log-destination
  • -F
  • --fsync
  • -i
  • --listen-addresses
  • -k
  • --unix-socket-directories
  • -l
  • --ssl
  • -N
  • --max-connections
  • -o
  • --other-options
  • -s
  • --statistics
  • -S
  • --work-mem
  • -t
  • --tcp-keepalives-idle
  • -W
  • --postmaster
  • --boot
  • --check
  • --describe-config
  • --single
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
postgres -D /var/lib/postgresql/data
Description :

Démarre le serveur avec datadir

Options :
  • -D
  • --pgdata

Ligne de commande :
postgres --single -D /var/lib/postgresql/data mabase
Description :

Mode single-user sur une base

Options :
  • --single
  • -D

Ligne de commande :
postmaster
Description :

Alias historique de postgres (multi-user)

Options :
  • -D
  • --pgdata

Ligne de commande :
pg_waldump
Description :

Affiche le contenu des fichiers WAL

Options :
  • -b
  • --bkp-detail
  • -e
  • --end
  • -f
  • --follow
  • -n
  • --limit
  • -p
  • --path
  • -q
  • --quiet
  • -r
  • --rmgr
  • -s
  • --start
  • -t
  • --timeline
  • -V
  • --version
  • -w
  • --waldir
  • -x
  • --xid
  • -z
  • --stats
  • -?
  • --help

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -s 0/1000000 -e 0/2000000
Description :

Affiche les WAL entre deux LSN

Options :
  • -p
  • --path
  • -s
  • --start
  • -e
  • --end

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -n 10
Description :

Affiche 10 enregistrements

Options :
  • -n
  • --limit

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -z
Description :

Affiche les statistiques

Options :
  • -z
  • --stats

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -r Heap
Description :

Filtre par gestionnaire de ressources

Options :
  • -r
  • --rmgr

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -x 12345
Description :

Filtre par ID de transaction

Options :
  • -x
  • --xid

Ligne de commande :
pg_waldump -p /var/lib/postgresql/data/pg_wal -t 1
Description :

Timeline spécifique

Options :
  • -t
  • --timeline

Ligne de commande :
pg_resetwal
Description :

Réinitialise les WAL (utiliser en dernier recours)

Options :
  • -D
  • --pgdata
  • -e
  • --epoch
  • -f
  • --force
  • -l
  • --next-wal-file
  • -m
  • --multixact-ids
  • -o
  • --next-oids
  • -O
  • --multixact-offset
  • -u
  • --oldest-transaction-id
  • -V
  • --version
  • -x
  • --next-transaction-id
  • --wal-segsize
  • -?
  • --help

Ligne de commande :
pg_resetwal -D /var/lib/postgresql/data -f
Description :

Force la réinitialisation des WAL

Options :
  • -D
  • -f
  • --force

Ligne de commande :
pg_resetwal -D /var/lib/postgresql/data -n
Description :

Simulation (dry run)

Options :
  • -n
  • --dry-run

Ligne de commande :
pg_resetwal -D /var/lib/postgresql/data -l 000000010000000000000001
Description :

Définit le prochain fichier WAL

Options :
  • -l
  • --next-wal-file

Ligne de commande :
pg_controldata
Description :

Affiche les informations de contrôle du cluster

Options :
  • -D
  • --pgdata
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_controldata -D /var/lib/postgresql/data
Description :

Affiche les données de contrôle

Options :
  • -D

Ligne de commande :
pg_verifybackup
Description :

Vérifie l'intégrité d'une sauvegarde base

Options :
  • -e
  • --exit-on-error
  • -i
  • --ignore
  • -m
  • --manifest-path
  • -n
  • --no-parse-wal
  • -q
  • --quiet
  • -s
  • --skip-checksums
  • -w
  • --wal-directory
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_verifybackup -m /backup/base/backup_manifest /backup/base
Description :

Vérifie une sauvegarde base

Options :
  • -m
  • --manifest-path

Ligne de commande :
pg_verifybackup -w /wal/archive /backup/base
Description :

Vérifie avec les WAL

Options :
  • -w
  • --wal-directory

Ligne de commande :
pg_combinebackup
Description :

Combine des sauvegardes incrémentielles

Options :
  • -o
  • --output
  • -V
  • --version
  • -?
  • --help

Ligne de commande :
pg_combinebackup -o /restored /backup/full /backup/inc1 /backup/inc2
Description :

Combine full + incrémentielles

Options :
  • -o
  • --output

Ligne de commande :
\l
Description :

[psql] Liste les bases de données

Options :
  • +

Ligne de commande :
\l+
Description :

[psql] Liste les bases avec détails

Ligne de commande :
\c mabase
Description :

[psql] Se connecte à une base de données

Options :
  • user
  • host
  • port

Ligne de commande :
\c mabase monuser localhost 5432
Description :

[psql] Connexion complète

Ligne de commande :
\dt
Description :

[psql] Liste les tables du schéma courant

Options :
  • +
  • pattern

Ligne de commande :
\dt+
Description :

[psql] Liste les tables avec taille

Ligne de commande :
\d nom_table
Description :

[psql] Décrit une table (colonnes, types, contraintes)

Options :
  • +

Ligne de commande :
\d+ nom_table
Description :

[psql] Décrit une table avec détails (stockage, taille)

Ligne de commande :
\di
Description :

[psql] Liste les index

Options :
  • +
  • pattern

Ligne de commande :
\dv
Description :

[psql] Liste les vues

Options :
  • +
  • pattern

Ligne de commande :
\dm
Description :

[psql] Liste les vues matérialisées

Options :
  • +
  • pattern

Ligne de commande :
\df
Description :

[psql] Liste les fonctions

Options :
  • +
  • pattern

Ligne de commande :
\df+
Description :

[psql] Liste les fonctions avec code source

Ligne de commande :
\dn
Description :

[psql] Liste les schémas

Options :
  • +
  • pattern

Ligne de commande :
\du
Description :

[psql] Liste les rôles (utilisateurs)

Options :
  • +
  • pattern

Ligne de commande :
\du+
Description :

[psql] Liste les rôles avec description

Ligne de commande :
\dg
Description :

[psql] Liste les groupes (alias de \du)

Options :
  • +

Ligne de commande :
\dp
Description :

[psql] Liste les privilèges des tables

Options :
  • pattern

Ligne de commande :
\z
Description :

[psql] Alias de \dp

Options :
  • pattern

Ligne de commande :
\ds
Description :

[psql] Liste les séquences

Options :
  • +
  • pattern

Ligne de commande :
\dS
Description :

[psql] Liste les tables système

Options :
  • +

Ligne de commande :
\db
Description :

[psql] Liste les tablespaces

Options :
  • +
  • pattern

Ligne de commande :
\dD
Description :

[psql] Liste les domaines

Options :
  • +
  • pattern

Ligne de commande :
\dT
Description :

[psql] Liste les types de données

Options :
  • +
  • pattern

Ligne de commande :
\dx
Description :

[psql] Liste les extensions installées

Options :
  • +
  • pattern

Ligne de commande :
\dx+
Description :

[psql] Liste les extensions avec objets

Ligne de commande :
\dy
Description :

[psql] Liste les event triggers

Options :
  • +
  • pattern

Ligne de commande :
\dRp
Description :

[psql] Liste les publications

Options :
  • +
  • pattern

Ligne de commande :
\dRs
Description :

[psql] Liste les souscriptions

Options :
  • +
  • pattern

Ligne de commande :
\sf nom_fonction
Description :

[psql] Affiche le code source d'une fonction

Options :
  • +

Ligne de commande :
\sv nom_vue
Description :

[psql] Affiche la définition d'une vue

Options :
  • +

Ligne de commande :
\dm nom_vue_mat
Description :

[psql] Affiche la définition d'une vue matérialisée

Options :
  • +

Ligne de commande :
\i fichier.sql
Description :

[psql] Exécute un fichier SQL

Ligne de commande :
\o fichier.txt
Description :

[psql] Redirige la sortie vers un fichier

Ligne de commande :
\o
Description :

[psql] Arrête la redirection de sortie

Ligne de commande :
\copy table FROM 'fichier.csv' DELIMITER ',' CSV HEADER
Description :

[psql] Importe un CSV dans une table

Options :
  • FROM
  • TO
  • DELIMITER
  • CSV
  • HEADER
  • QUOTE
  • ESCAPE
  • ENCODING

Ligne de commande :
\copy (SELECT * FROM users) TO 'export.csv' CSV HEADER
Description :

[psql] Exporte une requête en CSV

Ligne de commande :
\x
Description :

[psql] Active/désactive l'affichage étendu

Options :
  • on
  • off
  • auto

Ligne de commande :
\x auto
Description :

[psql] Affichage étendu automatique

Ligne de commande :
\timing
Description :

[psql] Active/désactive le chronométrage des requêtes

Options :
  • on
  • off

Ligne de commande :
\set nom_valeur valeur
Description :

[psql] Définit une variable

Ligne de commande :
\unset nom_valeur
Description :

[psql] Supprime une variable

Ligne de commande :
\echo 'message'
Description :

[psql] Affiche un message

Ligne de commande :
\qecho 'message'
Description :

[psql] Affiche dans la sortie de requête

Ligne de commande :
\warn 'message'
Description :

[psql] Affiche un avertissement

Ligne de commande :
\watch 5
Description :

[psql] Répète la dernière requête toutes les 5s

Options :
  • intervalle

Ligne de commande :
\g
Description :

[psql] Exécute la requête précédente

Options :
  • fichier
  • |commande

Ligne de commande :
\gx
Description :

[psql] Exécute en mode étendu

Ligne de commande :
\p
Description :

[psql] Affiche le buffer de requête

Ligne de commande :
\r
Description :

[psql] Efface le buffer de requête

Ligne de commande :
\w fichier.sql
Description :

[psql] Sauvegarde le buffer dans un fichier

Ligne de commande :
\e
Description :

[psql] Ouvre l'éditeur pour éditer la requête

Options :
  • fichier

Ligne de commande :
\ef nom_fonction
Description :

[psql] Édite une fonction dans l'éditeur

Ligne de commande :
\ev nom_vue
Description :

[psql] Édite une vue dans l'éditeur

Ligne de commande :
\encoding
Description :

[psql] Affiche/définit l'encodage client

Options :
  • encodage

Ligne de commande :
\encoding UTF8
Description :

[psql] Définit l'encodage UTF-8

Ligne de commande :
\pset border 2
Description :

[psql] Style de tableau (0=ascii, 1=unicode, 2=markdown)

Options :
  • border
  • format
  • linestyle
  • null
  • fieldsep
  • tuples_only
  • title
  • pager
  • footer

Ligne de commande :
\pset format html
Description :

[psql] Sortie au format HTML

Options :
  • unaligned
  • aligned
  • wrapped
  • html
  • asciidoc
  • latex
  • troff-ms

Ligne de commande :
\pset pager always
Description :

[psql] Utilise toujours un pager

Options :
  • always
  • never

Ligne de commande :
\pset null '(null)'
Description :

[psql] Affiche '(null)' pour les NULL

Ligne de commande :
\pset title 'Résultats'
Description :

[psql] Définit un titre

Ligne de commande :
\H
Description :

[psql] Active/désactive la sortie HTML

Ligne de commande :
\a
Description :

[psql] Active/désactive l'alignement

Ligne de commande :
\t
Description :

[psql] Active/désactive l'affichage des en-têtes

Ligne de commande :
\conninfo
Description :

[psql] Affiche les informations de connexion

Ligne de commande :
\q
Description :

[psql] Quitte psql

Ligne de commande :
\! commande
Description :

[psql] Exécute une commande shell

Ligne de commande :
\cd /chemin
Description :

[psql] Change de répertoire

Ligne de commande :
\s
Description :

[psql] Affiche l'historique des commandes

Options :
  • fichier

Ligne de commande :
\s historique.txt
Description :

[psql] Sauvegarde l'historique

Ligne de commande :
CREATE DATABASE mabase
Description :

[SQL] Crée une base de données

Options :
  • OWNER
  • TEMPLATE
  • ENCODING
  • LC_COLLATE
  • LC_CTYPE
  • TABLESPACE
  • ALLOW_CONNECTIONS
  • CONNECTION LIMIT
  • IS_TEMPLATE

Ligne de commande :
CREATE DATABASE mabase OWNER monuser ENCODING 'UTF8' LC_COLLATE 'fr_FR.UTF-8' LC_CTYPE 'fr_FR.UTF-8' TEMPLATE template0
Description :

[SQL] Crée une base complète

Ligne de commande :
DROP DATABASE mabase
Description :

[SQL] Supprime une base de données

Options :
  • IF EXISTS
  • WITH (FORCE)

Ligne de commande :
DROP DATABASE IF EXISTS mabase WITH (FORCE)
Description :

[SQL] Force la suppression (déconnecte les utilisateurs)

Ligne de commande :
CREATE SCHEMA monschema
Description :

[SQL] Crée un schéma

Options :
  • AUTHORIZATION
  • IF NOT EXISTS

Ligne de commande :
CREATE SCHEMA IF NOT EXISTS monschema AUTHORIZATION monuser
Description :

[SQL] Crée un schéma pour un utilisateur

Ligne de commande :
DROP SCHEMA monschema
Description :

[SQL] Supprime un schéma

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
DROP SCHEMA IF EXISTS monschema CASCADE
Description :

[SQL] Supprime un schéma et tous ses objets

Ligne de commande :
CREATE TABLE users (id SERIAL PRIMARY KEY, name VARCHAR(100), email VARCHAR(255) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP)
Description :

[SQL] Crée une table avec SERIAL

Ligne de commande :
CREATE TABLE users (id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name TEXT NOT NULL)
Description :

[SQL] Crée une table avec IDENTITY (standard SQL)

Options :
  • GENERATED ALWAYS
  • GENERATED BY DEFAULT

Ligne de commande :
CREATE TABLE users (id BIGSERIAL PRIMARY KEY, data JSONB, tags TEXT[], settings HSTORE)
Description :

[SQL] Table avec types PostgreSQL (JSONB, array, HSTORE)

Ligne de commande :
CREATE TABLE logs (id SERIAL, message TEXT, created_at TIMESTAMPTZ DEFAULT NOW()) PARTITION BY RANGE (created_at)
Description :

[SQL] Table partitionnée

Options :
  • PARTITION BY RANGE
  • PARTITION BY LIST
  • PARTITION BY HASH

Ligne de commande :
CREATE TABLE logs_2024 PARTITION OF logs FOR VALUES FROM ('2024-01-01') TO ('2025-01-01')
Description :

[SQL] Partition pour 2024

Ligne de commande :
CREATE TEMPORARY TABLE temp_data (id INT, value TEXT)
Description :

[SQL] Table temporaire (session)

Options :
  • TEMP
  • TEMPORARY
  • UNLOGGED
  • IF NOT EXISTS

Ligne de commande :
CREATE UNLOGGED TABLE cache (key TEXT PRIMARY KEY, value JSONB)
Description :

[SQL] Table non journalisée (plus rapide, non répliquée)

Options :
  • UNLOGGED

Ligne de commande :
ALTER TABLE users ADD COLUMN age INT
Description :

[SQL] Ajoute une colonne

Options :
  • IF NOT EXISTS

Ligne de commande :
ALTER TABLE users ADD COLUMN age INT DEFAULT 0 NOT NULL
Description :

[SQL] Ajoute avec contraintes

Ligne de commande :
ALTER TABLE users DROP COLUMN age
Description :

[SQL] Supprime une colonne

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
ALTER TABLE users RENAME COLUMN name TO full_name
Description :

[SQL] Renomme une colonne

Ligne de commande :
ALTER TABLE users ALTER COLUMN age TYPE BIGINT
Description :

[SQL] Change le type d'une colonne

Options :
  • USING

Ligne de commande :
ALTER TABLE users ALTER COLUMN age TYPE VARCHAR(10) USING age::VARCHAR(10)
Description :

[SQL] Change le type avec conversion

Options :
  • USING

Ligne de commande :
ALTER TABLE users ALTER COLUMN email SET NOT NULL
Description :

[SQL] Ajoute une contrainte NOT NULL

Options :
  • SET NOT NULL
  • DROP NOT NULL

Ligne de commande :
ALTER TABLE users ALTER COLUMN age SET DEFAULT 18
Description :

[SQL] Définit une valeur par défaut

Options :
  • SET DEFAULT
  • DROP DEFAULT

Ligne de commande :
ALTER TABLE users ADD CONSTRAINT unique_email UNIQUE (email)
Description :

[SQL] Ajoute une contrainte UNIQUE

Ligne de commande :
ALTER TABLE users ADD CONSTRAINT pk_users PRIMARY KEY (id)
Description :

[SQL] Ajoute une clé primaire

Options :
  • USING INDEX TABLESPACE

Ligne de commande :
ALTER TABLE orders ADD CONSTRAINT fk_user FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
Description :

[SQL] Ajoute une clé étrangère

Options :
  • ON DELETE
  • ON UPDATE
  • DEFERRABLE
  • NOT VALID

Ligne de commande :
ALTER TABLE users ADD CONSTRAINT age_check CHECK (age >= 0)
Description :

[SQL] Ajoute une contrainte CHECK

Options :
  • NOT VALID

Ligne de commande :
ALTER TABLE users DROP CONSTRAINT age_check
Description :

[SQL] Supprime une contrainte

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
ALTER TABLE users RENAME TO clients
Description :

[SQL] Renomme une table

Ligne de commande :
ALTER TABLE users SET SCHEMA public
Description :

[SQL] Déplace une table dans un autre schéma

Ligne de commande :
DROP TABLE users
Description :

[SQL] Supprime une table

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
TRUNCATE TABLE users
Description :

[SQL] Vide une table

Options :
  • RESTART IDENTITY
  • CONTINUE IDENTITY
  • CASCADE
  • RESTRICT

Ligne de commande :
TRUNCATE TABLE users RESTART IDENTITY CASCADE
Description :

[SQL] Vide et réinitialise les séquences

Ligne de commande :
CREATE INDEX idx_users_email ON users(email)
Description :

[SQL] Crée un index

Options :
  • UNIQUE
  • CONCURRENTLY
  • IF NOT EXISTS
  • USING
  • TABLESPACE
  • WHERE
  • INCLUDE

Ligne de commande :
CREATE INDEX CONCURRENTLY idx_users_email ON users(email)
Description :

[SQL] Crée un index sans bloquer

Options :
  • CONCURRENTLY

Ligne de commande :
CREATE UNIQUE INDEX idx_users_email ON users(email)
Description :

[SQL] Index unique

Options :
  • UNIQUE

Ligne de commande :
CREATE INDEX idx_users_partial ON users(email) WHERE active = true
Description :

[SQL] Index partiel

Options :
  • WHERE

Ligne de commande :
CREATE INDEX idx_users_gin ON users USING GIN (tags)
Description :

[SQL] Index GIN (tableaux, JSONB)

Options :
  • USING

Ligne de commande :
CREATE INDEX idx_users_gist ON locations USING GIST (coordinates)
Description :

[SQL] Index GiST (géospatial)

Options :
  • USING

Ligne de commande :
CREATE INDEX idx_users_brin ON logs USING BRIN (created_at)
Description :

[SQL] Index BRIN (grandes tables)

Options :
  • USING

Ligne de commande :
CREATE INDEX idx_users_hash ON users USING HASH (email)
Description :

[SQL] Index HASH

Options :
  • USING

Ligne de commande :
CREATE INDEX idx_users_covering ON users(email) INCLUDE (name, age)
Description :

[SQL] Index couvrant (INCLUDE)

Options :
  • INCLUDE

Ligne de commande :
DROP INDEX idx_users_email
Description :

[SQL] Supprime un index

Options :
  • CONCURRENTLY
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
REINDEX INDEX idx_users_email
Description :

[SQL] Reconstruit un index

Options :
  • CONCURRENTLY

Ligne de commande :
REINDEX TABLE users
Description :

[SQL] Reconstruit tous les index d'une table

Options :
  • CONCURRENTLY

Ligne de commande :
REINDEX SCHEMA public
Description :

[SQL] Reconstruit les index d'un schéma

Options :
  • CONCURRENTLY

Ligne de commande :
REINDEX DATABASE mabase
Description :

[SQL] Reconstruit les index d'une base

Options :
  • CONCURRENTLY

Ligne de commande :
CLUSTER users USING idx_users_email
Description :

[SQL] Réorganise physiquement selon l'index

Options :
  • VERBOSE

Ligne de commande :
VACUUM users
Description :

[SQL] Nettoie les tuples morts

Options :
  • FULL
  • FREEZE
  • VERBOSE
  • ANALYZE
  • SKIP_LOCKED
  • PARALLEL

Ligne de commande :
VACUUM FULL VERBOSE users
Description :

[SQL] VACUUM FULL avec logs

Ligne de commande :
VACUUM FREEZE users
Description :

[SQL] VACUUM avec freeze

Ligne de commande :
ANALYZE users
Description :

[SQL] Met à jour les statistiques

Options :
  • VERBOSE
  • SKIP_LOCKED

Ligne de commande :
CREATE VIEW active_users AS SELECT * FROM users WHERE active = true
Description :

[SQL] Crée une vue

Options :
  • OR REPLACE
  • TEMP
  • RECURSIVE
  • WITH CHECK OPTION

Ligne de commande :
CREATE OR REPLACE VIEW active_users AS SELECT id, name FROM users WHERE active = true
Description :

[SQL] Remplace une vue existante

Ligne de commande :
CREATE MATERIALIZED VIEW user_stats AS SELECT city, COUNT(*) FROM users GROUP BY city
Description :

[SQL] Vue matérialisée

Options :
  • WITH DATA
  • WITH NO DATA
  • TABLESPACE

Ligne de commande :
REFRESH MATERIALIZED VIEW user_stats
Description :

[SQL] Rafraîchit une vue matérialisée

Options :
  • CONCURRENTLY
  • WITH DATA
  • WITH NO DATA

Ligne de commande :
REFRESH MATERIALIZED VIEW CONCURRENTLY user_stats
Description :

[SQL] Rafraîchit sans bloquer

Options :
  • CONCURRENTLY

Ligne de commande :
DROP MATERIALIZED VIEW user_stats
Description :

[SQL] Supprime une vue matérialisée

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
CREATE SEQUENCE user_id_seq START 1000 INCREMENT 1
Description :

[SQL] Crée une séquence

Options :
  • INCREMENT
  • MINVALUE
  • MAXVALUE
  • START
  • CACHE
  • CYCLE
  • OWNED BY

Ligne de commande :
SELECT nextval('user_id_seq')
Description :

[SQL] Valeur suivante d'une séquence

Ligne de commande :
SELECT currval('user_id_seq')
Description :

[SQL] Valeur courante d'une séquence

Ligne de commande :
ALTER SEQUENCE user_id_seq RESTART WITH 2000
Description :

[SQL] Redémarre une séquence

Options :
  • RESTART
  • RENAME TO
  • OWNED BY

Ligne de commande :
DROP SEQUENCE user_id_seq
Description :

[SQL] Supprime une séquence

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
CREATE ROLE monuser WITH LOGIN PASSWORD 'secret'
Description :

[SQL] Crée un rôle avec connexion

Options :
  • SUPERUSER
  • NOSUPERUSER
  • CREATEDB
  • NOCREATEDB
  • CREATEROLE
  • NOCREATEROLE
  • INHERIT
  • NOINHERIT
  • LOGIN
  • NOLOGIN
  • REPLICATION
  • NOREPLICATION
  • BYPASSRLS
  • NOBYPASSRLS
  • CONNECTION LIMIT
  • VALID UNTIL
  • IN ROLE
  • ROLE
  • ADMIN

Ligne de commande :
CREATE USER monuser WITH PASSWORD 'secret'
Description :

[SQL] Alias de CREATE ROLE avec LOGIN

Ligne de commande :
ALTER ROLE monuser WITH PASSWORD 'newsecret'
Description :

[SQL] Modifie le mot de passe

Ligne de commande :
ALTER ROLE monuser RENAME TO newuser
Description :

[SQL] Renomme un rôle

Ligne de commande :
DROP ROLE monuser
Description :

[SQL] Supprime un rôle

Options :
  • IF EXISTS

Ligne de commande :
GRANT SELECT, INSERT, UPDATE ON users TO monuser
Description :

[SQL] Donne des privilèges sur une table

Options :
  • WITH GRANT OPTION

Ligne de commande :
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO monuser
Description :

[SQL] Donne tous les droits sur toutes les tables

Ligne de commande :
GRANT USAGE ON SCHEMA public TO monuser
Description :

[SQL] Permet d'utiliser le schéma

Ligne de commande :
GRANT CONNECT ON DATABASE mabase TO monuser
Description :

[SQL] Permet de se connecter à la base

Ligne de commande :
GRANT EXECUTE ON FUNCTION get_users() TO monuser
Description :

[SQL] Permet d'exécuter une fonction

Ligne de commande :
REVOKE INSERT, UPDATE ON users FROM monuser
Description :

[SQL] Révoque des privilèges

Options :
  • GRANT OPTION FOR
  • CASCADE
  • RESTRICT

Ligne de commande :
REVOKE ALL PRIVILEGES ON users FROM monuser
Description :

[SQL] Révoque tous les privilèges

Ligne de commande :
BEGIN
Description :

[SQL] Démarre une transaction

Options :
  • WORK
  • TRANSACTION
  • ISOLATION LEVEL
  • READ ONLY
  • READ WRITE
  • DEFERRABLE

Ligne de commande :
BEGIN ISOLATION LEVEL SERIALIZABLE
Description :

[SQL] Transaction avec isolation SERIALIZABLE

Ligne de commande :
BEGIN READ ONLY
Description :

[SQL] Transaction en lecture seule

Ligne de commande :
COMMIT
Description :

[SQL] Valide une transaction

Options :
  • WORK
  • TRANSACTION
  • AND CHAIN
  • AND NO CHAIN

Ligne de commande :
ROLLBACK
Description :

[SQL] Annule une transaction

Options :
  • WORK
  • TRANSACTION
  • AND CHAIN
  • AND NO CHAIN
  • TO SAVEPOINT

Ligne de commande :
SAVEPOINT sp1
Description :

[SQL] Crée un point de sauvegarde

Ligne de commande :
ROLLBACK TO SAVEPOINT sp1
Description :

[SQL] Revient à un point de sauvegarde

Ligne de commande :
RELEASE SAVEPOINT sp1
Description :

[SQL] Supprime un point de sauvegarde

Ligne de commande :
EXPLAIN SELECT * FROM users WHERE email = 'test@example.com'
Description :

[SQL] Affiche le plan d'exécution

Options :
  • ANALYZE
  • VERBOSE
  • COSTS
  • BUFFERS
  • WAL
  • TIMING
  • SUMMARY
  • FORMAT

Ligne de commande :
EXPLAIN ANALYZE SELECT * FROM users WHERE email = 'test@example.com'
Description :

[SQL] Exécute et analyse la requête

Options :
  • ANALYZE
  • BUFFERS
  • VERBOSE

Ligne de commande :
EXPLAIN (ANALYZE, BUFFERS, VERBOSE) SELECT * FROM users
Description :

[SQL] Analyse détaillée

Ligne de commande :
EXPLAIN (FORMAT JSON) SELECT * FROM users
Description :

[SQL] Plan au format JSON

Options :
  • FORMAT TEXT
  • FORMAT XML
  • FORMAT YAML

Ligne de commande :
SELECT pg_size_pretty(pg_database_size('mabase'))
Description :

[SQL] Taille de la base en format lisible

Ligne de commande :
SELECT pg_size_pretty(pg_total_relation_size('users'))
Description :

[SQL] Taille d'une table (avec index)

Ligne de commande :
SELECT pg_size_pretty(pg_relation_size('users'))
Description :

[SQL] Taille d'une table (sans index)

Ligne de commande :
SELECT pg_size_pretty(pg_indexes_size('users'))
Description :

[SQL] Taille des index d'une table

Ligne de commande :
SELECT schemaname, tablename, pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) FROM pg_tables ORDER BY pg_total_relation_size(schemaname||'.'||tablename) DESC LIMIT 10
Description :

[SQL] Top 10 des plus grandes tables

Ligne de commande :
SELECT * FROM pg_stat_activity
Description :

[SQL] Activité en cours

Options :
  • WHERE state = 'active'
  • WHERE wait_event IS NOT NULL

Ligne de commande :
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid()
Description :

[SQL] Tue toutes les autres connexions

Ligne de commande :
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'mabase' AND pid <> pg_backend_pid()
Description :

[SQL] Tue les connexions d'une base

Ligne de commande :
SELECT pg_cancel_backend(12345)
Description :

[SQL] Annule une requête (sans tuer la connexion)

Ligne de commande :
SELECT * FROM pg_stat_replication
Description :

[SQL] État de la réplication

Ligne de commande :
SELECT * FROM pg_replication_slots
Description :

[SQL] Slots de réplication

Ligne de commande :
SELECT pg_create_physical_replication_slot('slot1')
Description :

[SQL] Crée un slot de réplication physique

Ligne de commande :
SELECT pg_drop_replication_slot('slot1')
Description :

[SQL] Supprime un slot de réplication

Ligne de commande :
SELECT pg_create_logical_replication_slot('slot1', 'test_decoding')
Description :

[SQL] Crée un slot de réplication logique

Ligne de commande :
SELECT * FROM pg_publication
Description :

[SQL] Liste les publications

Ligne de commande :
CREATE PUBLICATION pub1 FOR TABLE users, orders
Description :

[SQL] Crée une publication

Options :
  • FOR ALL TABLES
  • FOR TABLE
  • WITH (publish = 'insert,update,delete')

Ligne de commande :
SELECT * FROM pg_subscription
Description :

[SQL] Liste les souscriptions

Ligne de commande :
CREATE SUBSCRIPTION sub1 CONNECTION 'host=remote port=5432 dbname=mabase user=postgres' PUBLICATION pub1
Description :

[SQL] Crée une souscription

Options :
  • WITH (enabled = false, create_slot = false, slot_name = none)

Ligne de commande :
ALTER SUBSCRIPTION sub1 REFRESH PUBLICATION
Description :

[SQL] Rafraîchit une souscription

Options :
  • WITH (copy_data = false)

Ligne de commande :
DROP SUBSCRIPTION sub1
Description :

[SQL] Supprime une souscription

Ligne de commande :
SELECT pg_reload_conf()
Description :

[SQL] Recharge la configuration

Ligne de commande :
SELECT pg_rotate_logfile()
Description :

[SQL] Rotation des logs

Ligne de commande :
SELECT pg_switch_wal()
Description :

[SQL] Force le switch des WAL

Ligne de commande :
SELECT pg_current_wal_lsn()
Description :

[SQL] LSN courant des WAL

Ligne de commande :
SELECT pg_walfile_name(pg_current_wal_lsn())
Description :

[SQL] Nom du fichier WAL courant

Ligne de commande :
SELECT pg_ls_dir('pg_wal')
Description :

[SQL] Liste les fichiers WAL

Ligne de commande :
SELECT pg_stat_reset()
Description :

[SQL] Réinitialise les statistiques

Ligne de commande :
SELECT pg_stat_reset_shared('bgwriter')
Description :

[SQL] Réinitialise les stats du bgwriter

Ligne de commande :
SELECT pg_sleep(5)
Description :

[SQL] Pause de 5 secondes

Ligne de commande :
SELECT pg_advisory_lock(12345)
Description :

[SQL] Pose un verrou applicatif

Ligne de commande :
SELECT pg_advisory_unlock(12345)
Description :

[SQL] Libère un verrou applicatif

Ligne de commande :
SELECT pg_try_advisory_lock(12345)
Description :

[SQL] Tente de poser un verrou

Ligne de commande :
SELECT locktype, relation::regclass, mode, granted FROM pg_locks WHERE NOT granted
Description :

[SQL] Verrous en attente

Ligne de commande :
SELECT a.datname, a.usename, a.query, l.mode, l.granted FROM pg_stat_activity a JOIN pg_locks l ON a.pid = l.pid WHERE NOT l.granted
Description :

[SQL] Requêtes bloquées

Ligne de commande :
SELECT * FROM pg_available_extensions
Description :

[SQL] Extensions disponibles

Ligne de commande :
CREATE EXTENSION IF NOT EXISTS "uuid-ossp"
Description :

[SQL] Installe l'extension uuid-ossp

Options :
  • SCHEMA
  • VERSION
  • CASCADE

Ligne de commande :
CREATE EXTENSION IF NOT EXISTS postgis
Description :

[SQL] Installe PostGIS

Ligne de commande :
CREATE EXTENSION IF NOT EXISTS pg_stat_statements
Description :

[SQL] Installe pg_stat_statements

Ligne de commande :
DROP EXTENSION "uuid-ossp"
Description :

[SQL] Supprime une extension

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT

Ligne de commande :
ALTER EXTENSION "uuid-ossp" UPDATE
Description :

[SQL] Met à jour une extension

Options :
  • TO 'version'

Ligne de commande :
SELECT * FROM pg_stat_statements ORDER BY total_time DESC LIMIT 10
Description :

[SQL] Top 10 des requêtes les plus lentes

Ligne de commande :
SELECT pg_stat_statements_reset()
Description :

[SQL] Réinitialise pg_stat_statements

Ligne de commande :
SHOW config_file
Description :

[SQL] Affiche le chemin du fichier de configuration

Ligne de commande :
SHOW data_directory
Description :

[SQL] Affiche le répertoire des données

Ligne de commande :
SHOW hba_file
Description :

[SQL] Affiche le chemin du fichier pg_hba.conf

Ligne de commande :
SHOW all
Description :

[SQL] Affiche tous les paramètres

Ligne de commande :
SHOW shared_buffers
Description :

[SQL] Affiche un paramètre spécifique

Ligne de commande :
SET work_mem = '64MB'
Description :

[SQL] Modifie un paramètre pour la session

Options :
  • SESSION
  • LOCAL

Ligne de commande :
ALTER SYSTEM SET work_mem = '64MB'
Description :

[SQL] Modifie un paramètre dans postgresql.auto.conf

Ligne de commande :
ALTER SYSTEM RESET work_mem
Description :

[SQL] Réinitialise un paramètre système

Options :
  • ALL

Ligne de commande :
SELECT * FROM pg_settings WHERE name LIKE '%memory%'
Description :

[SQL] Recherche des paramètres

Ligne de commande :
SELECT * FROM pg_file_settings
Description :

[SQL] Paramètres dans les fichiers de configuration

Ligne de commande :
SELECT current_database()
Description :

[SQL] Base de données courante

Ligne de commande :
SELECT current_user
Description :

[SQL] Utilisateur courant

Ligne de commande :
SELECT session_user
Description :

[SQL] Utilisateur de session

Ligne de commande :
SELECT inet_server_addr()
Description :

[SQL] Adresse IP du serveur

Ligne de commande :
SELECT inet_server_port()
Description :

[SQL] Port du serveur

Ligne de commande :
SELECT inet_client_addr()
Description :

[SQL] Adresse IP du client

Ligne de commande :
SELECT pg_backend_pid()
Description :

[SQL] PID de la session courante

Ligne de commande :
SELECT pg_postmaster_start_time()
Description :

[SQL] Date de démarrage du serveur

Ligne de commande :
SELECT pg_conf_load_time()
Description :

[SQL] Date de chargement de la configuration

Ligne de commande :
SELECT txid_current()
Description :

[SQL] ID de transaction courant

Ligne de commande :
SELECT txid_status(12345)
Description :

[SQL] Statut d'une transaction

Ligne de commande :
SELECT pg_is_in_recovery()
Description :

[SQL] Vérifie si le serveur est en recovery (standby)

Ligne de commande :
SELECT pg_is_wal_replay_paused()
Description :

[SQL] Vérifie si le replay WAL est en pause

Ligne de commande :
SELECT pg_promote()
Description :

[SQL] Promeut un standby en primary

Options :
  • wait
  • wait_seconds

Ligne de commande :
SELECT pg_wal_replay_pause()
Description :

[SQL] Met en pause le replay WAL

Ligne de commande :
SELECT pg_wal_replay_resume()
Description :

[SQL] Reprend le replay WAL