Catalogue des Commandes 24/02/2026 21:00:00 angularforall.com

- PostgreSQL : guide CLI psql et streaming

Postgresql Psql Base-De-Donnees Pg-Config Pg-Cluster Streaming Realtime Shell Admin-Postgresql Client-Postgresql Sql Pg-Dump Replication Pgvector

Maîtrisez PostgreSQL : commandes CLI psql, configuration, gestion de clusters, streaming temps réel et bonnes pratiques pour applications modernes.

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
psql -U postgres
Description :

Connexion en tant que superutilisateur postgres

Options :
  • -h
  • -p
  • -d
psql -h localhost -p 5432 -U monuser -d mabase
Description :

Connexion avec tous les paramètres

Options :
  • -W
psql -d mabase -c "SELECT * FROM users"
Description :

Exécute une commande SQL et quitte

Options :
  • -c
  • --command
psql -d mabase -f script.sql
Description :

Exécute un fichier SQL

Options :
  • -f ⚠️
  • --file ⚠️
  • -1
  • --single-transaction
psql -l
Description :

Liste toutes les bases de données

Options :
  • -l
  • --list
psql -d mabase -A -t -F ',' -c "SELECT * FROM users" > export.csv
Description :

Exporte en CSV

Options :
  • -A
  • -t
  • -F ⚠️
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
createdb -U postgres mabase
Description :

Crée une base de données

Options :
  • -O
  • --owner
  • -E
  • --encoding
  • -T
  • --template
createdb -U postgres -O monuser -E UTF8 mabase
Description :

Crée une base avec propriétaire et encodage

Options :
  • -O
  • -E
createdb -U postgres -T template0 mabase
Description :

Crée une base depuis template0

Options :
  • -T
  • --template
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
dropdb -U postgres mabase
Description :

Supprime une base de données

Options :
  • -f ⚠️
  • --force ⚠️
  • --if-exists
  • -i
  • --interactive
dropdb -U postgres --if-exists mabase
Description :

Supprime si elle existe

Options :
  • --if-exists
dropdb -U postgres -f mabase
Description :

Force la suppression (déconnecte les utilisateurs)

Options :
  • -f ⚠️
  • --force ⚠️
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
pg_dump -U postgres mabase > sauvegarde.sql
Description :

Sauvegarde au format SQL texte

Options :
  • -f ⚠️
  • --file ⚠️
pg_dump -U postgres -F c -f sauvegarde.dump mabase
Description :

Sauvegarde au format personnalisé (compressé)

Options :
  • -F ⚠️
  • --format ⚠️
pg_dump -U postgres -F d -j 4 -f /backup/ mabase
Description :

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

Options :
  • -F ⚠️
  • -j
  • --jobs
pg_dump -U postgres -F t -f sauvegarde.tar mabase
Description :

Sauvegarde au format tar

Options :
  • -F ⚠️
  • --format ⚠️
pg_dump -U postgres -s mabase > schema.sql
Description :

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

Options :
  • -s
  • --schema-only
pg_dump -U postgres -a mabase > data.sql
Description :

Sauvegarde uniquement les données

Options :
  • -a
  • --data-only
pg_dump -U postgres -t users mabase > users.sql
Description :

Sauvegarde une table spécifique

Options :
  • -t
  • --table
pg_dump -U postgres -T logs mabase > sans_logs.sql
Description :

Exclut une table de la sauvegarde

Options :
  • -T
  • --exclude-table
pg_dump -U postgres -n public mabase > schema_public.sql
Description :

Sauvegarde un schéma spécifique

Options :
  • -n
  • --schema
pg_dump -U postgres --inserts mabase > sauvegarde_inserts.sql
Description :

Utilise INSERT au lieu de COPY

Options :
  • --inserts
  • --column-inserts
pg_dump -U postgres -Z 9 -F c -f sauvegarde.dump mabase
Description :

Compression maximale (9)

Options :
  • -Z
  • --compress
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
pg_dumpall -U postgres > toutes_bases.sql
Description :

Sauvegarde tout le cluster

Options :
  • -f ⚠️
  • --file ⚠️
pg_dumpall -U postgres -g > globals.sql
Description :

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

Options :
  • -g
  • --globals-only
pg_dumpall -U postgres -r > roles.sql
Description :

Sauvegarde uniquement les rôles

Options :
  • -r ⚠️
  • --roles-only ⚠️
pg_dumpall -U postgres -t > tablespaces.sql
Description :

Sauvegarde uniquement les tablespaces

Options :
  • -t
  • --tablespaces-only
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
pg_restore -U postgres -d mabase sauvegarde.dump
Description :

Restaure une sauvegarde au format personnalisé

Options :
  • -d
  • --dbname
pg_restore -U postgres -d mabase -c sauvegarde.dump
Description :

Restaure en nettoyant d'abord (DROP)

Options :
  • -c
  • --clean
pg_restore -U postgres -d mabase -C sauvegarde.dump
Description :

Crée la base avant restauration

Options :
  • -C
  • --create
pg_restore -U postgres -d mabase -j 4 sauvegarde.dump
Description :

Restaure en parallèle (4 jobs)

Options :
  • -j
  • --jobs
pg_restore -U postgres -d mabase -t users sauvegarde.dump
Description :

Restaure une table spécifique

Options :
  • -t
  • --table
pg_restore -U postgres -d mabase -n public sauvegarde.dump
Description :

Restaure un schéma spécifique

Options :
  • -n
  • --schema
pg_restore -U postgres -l sauvegarde.dump > liste.txt
Description :

Liste le contenu de la sauvegarde

Options :
  • -l
  • --list
pg_restore -U postgres -d mabase -L liste.txt sauvegarde.dump
Description :

Restaure selon une liste éditée

Options :
  • -L
  • --use-list
pg_restore -U postgres -d mabase -a sauvegarde.dump
Description :

Restaure uniquement les données

Options :
  • -a
  • --data-only
pg_restore -U postgres -d mabase -s sauvegarde.dump
Description :

Restaure uniquement le schéma

Options :
  • -s
  • --schema-only
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
pg_ctl -D /var/lib/postgresql/data start
Description :

Démarre le serveur PostgreSQL

Options :
  • -l
  • --log
  • -o
  • --options
  • -w
  • --wait
pg_ctl -D /var/lib/postgresql/data stop
Description :

Arrête le serveur PostgreSQL

Options :
  • -m
  • --mode
  • -t
  • --timeout
  • -W
  • --no-wait
pg_ctl -D /var/lib/postgresql/data stop -m fast
Description :

Arrêt rapide (annule les transactions)

Options :
  • -m
  • --mode
pg_ctl -D /var/lib/postgresql/data stop -m immediate
Description :

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

Options :
  • -m
  • --mode
pg_ctl -D /var/lib/postgresql/data restart
Description :

Redémarre le serveur PostgreSQL

Options :
  • -m
  • --mode
  • -t
  • --timeout
pg_ctl -D /var/lib/postgresql/data reload
Description :

Recharge la configuration sans redémarrer

Options :
  • -s
  • --silent
pg_ctl -D /var/lib/postgresql/data status
Description :

Affiche le statut du serveur

pg_ctl -D /var/lib/postgresql/data promote
Description :

Promeut un serveur standby en primary

Options :
  • -w
  • --wait
  • -W
  • --no-wait
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
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
initdb -D /var/lib/postgresql/data -k
Description :

Initialise avec checksums de données

Options :
  • -k
  • --data-checksums
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
pg_checksums -D /var/lib/postgresql/data --check
Description :

Vérifie les checksums

Options :
  • --check
  • -v
  • --verbose
  • -P
  • --progress
pg_checksums -D /var/lib/postgresql/data --enable
Description :

Active les checksums (serveur arrêté)

Options :
  • --enable
  • -P
  • --progress
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
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
pg_basebackup -h localhost -U postgres -D /backup/base -R -S slot_replication
Description :

Sauvegarde pour standby avec slot

Options :
  • -R ⚠️
  • -S
  • --slot
pg_basebackup -h localhost -U postgres -D /backup/base -X stream
Description :

Inclut les WAL en streaming

Options :
  • -X
  • --wal-method
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
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
pg_receivewal -h localhost -U postgres -D /wal/archive -s 10
Description :

Affiche le statut toutes les 10 secondes

Options :
  • -s
  • --status-interval
pg_receivewal -h localhost -U postgres -D /wal/archive -Z 9
Description :

Compression maximale des WAL

Options :
  • -Z
  • --compress
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
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 ⚠️
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
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
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
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
vacuumdb -U postgres -d mabase
Description :

Lance VACUUM sur une base

Options :
  • -d
  • --dbname
  • -v
  • --verbose
vacuumdb -U postgres -d mabase -f
Description :

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

Options :
  • -f ⚠️
  • --full ⚠️
vacuumdb -U postgres -d mabase -z
Description :

VACUUM et ANALYZE

Options :
  • -z
  • --analyze
vacuumdb -U postgres -d mabase -Z
Description :

ANALYZE uniquement

Options :
  • -Z
  • --analyze-only
vacuumdb -U postgres -d mabase -t users
Description :

VACUUM sur une table spécifique

Options :
  • -t
  • --table
vacuumdb -U postgres -a
Description :

VACUUM sur toutes les bases

Options :
  • -a
  • --all
vacuumdb -U postgres -d mabase -j 4
Description :

VACUUM parallèle (4 workers)

Options :
  • -j
  • --jobs
vacuumdb -U postgres -d mabase --freeze
Description :

VACUUM FREEZE (prévient le wraparound)

Options :
  • -F ⚠️
  • --freeze ⚠️
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
reindexdb -U postgres -d mabase
Description :

Reconstruit tous les index d'une base

Options :
  • -d
  • --dbname
  • -v
  • --verbose
reindexdb -U postgres -d mabase -t users
Description :

Reconstruit les index d'une table

Options :
  • -t
  • --table
reindexdb -U postgres -d mabase -i idx_users_email
Description :

Reconstruit un index spécifique

Options :
  • -i
  • --index
reindexdb -U postgres -d mabase -S public
Description :

Reconstruit les index d'un schéma

Options :
  • -S
  • --schema
reindexdb -U postgres -d mabase -s
Description :

Reconstruit les index système

Options :
  • -s
  • --system
reindexdb -U postgres -d mabase --concurrently -t users
Description :

Reconstruit sans bloquer les écritures

Options :
  • --concurrently
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
clusterdb -U postgres -d mabase -t users
Description :

Cluster une table selon son index cluster

Options :
  • -d
  • -t
  • -v
  • --verbose
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
pg_isready -h localhost -p 5432
Description :

Vérifie si le serveur accepte les connexions

Options :
  • -h
  • -p
  • -q
  • --quiet
pg_isready -h localhost -p 5432 -t 5
Description :

Timeout de 5 secondes

Options :
  • -t
  • --timeout
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
pgbench -i -s 10 -U postgres mabase
Description :

Initialise une base de test (scale 10)

Options :
  • -i
  • --initialize
  • -s
  • --scale
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
pgbench -c 10 -t 1000 -U postgres mabase
Description :

1000 transactions par client

Options :
  • -c
  • -t
  • --transactions
pgbench -c 10 -T 60 -P 10 -U postgres mabase
Description :

Affiche la progression toutes les 10s

Options :
  • -P
  • --progress
pgbench -c 10 -T 60 -f script.sql -U postgres mabase
Description :

Utilise un script personnalisé

Options :
  • -f ⚠️
  • --file ⚠️
pgbench -b tpcb-like -c 10 -T 60 -U postgres mabase
Description :

Benchmark TPC-B like

Options :
  • -b
  • --builtin
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
pg_config --version
Description :

Affiche la version de PostgreSQL

pg_config --bindir
Description :

Affiche le répertoire des exécutables

pg_config --libdir
Description :

Affiche le répertoire des bibliothèques

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
postgres -D /var/lib/postgresql/data
Description :

Démarre le serveur avec datadir

Options :
  • -D
  • --pgdata
postgres --single -D /var/lib/postgresql/data mabase
Description :

Mode single-user sur une base

Options :
  • --single
  • -D
postmaster
Description :

Alias historique de postgres (multi-user)

Options :
  • -D
  • --pgdata
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
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
pg_waldump -p /var/lib/postgresql/data/pg_wal -n 10
Description :

Affiche 10 enregistrements

Options :
  • -n
  • --limit
pg_waldump -p /var/lib/postgresql/data/pg_wal -z
Description :

Affiche les statistiques

Options :
  • -z
  • --stats
pg_waldump -p /var/lib/postgresql/data/pg_wal -r Heap
Description :

Filtre par gestionnaire de ressources

Options :
  • -r ⚠️
  • --rmgr ⚠️
pg_waldump -p /var/lib/postgresql/data/pg_wal -x 12345
Description :

Filtre par ID de transaction

Options :
  • -x
  • --xid
pg_waldump -p /var/lib/postgresql/data/pg_wal -t 1
Description :

Timeline spécifique

Options :
  • -t
  • --timeline
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
pg_resetwal -D /var/lib/postgresql/data -f
Description :

Force la réinitialisation des WAL

Options :
  • -D
  • -f ⚠️
  • --force ⚠️
pg_resetwal -D /var/lib/postgresql/data -n
Description :

Simulation (dry run)

Options :
  • -n
  • --dry-run ⚠️
pg_resetwal -D /var/lib/postgresql/data -l 000000010000000000000001
Description :

Définit le prochain fichier WAL

Options :
  • -l
  • --next-wal-file ⚠️
pg_controldata
Description :

Affiche les informations de contrôle du cluster

Options :
  • -D
  • --pgdata
  • -V
  • --version
  • -?
  • --help
pg_controldata -D /var/lib/postgresql/data
Description :

Affiche les données de contrôle

Options :
  • -D
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
pg_verifybackup -m /backup/base/backup_manifest /backup/base
Description :

Vérifie une sauvegarde base

Options :
  • -m
  • --manifest-path
pg_verifybackup -w /wal/archive /backup/base
Description :

Vérifie avec les WAL

Options :
  • -w
  • --wal-directory
pg_combinebackup
Description :

Combine des sauvegardes incrémentielles

Options :
  • -o
  • --output
  • -V
  • --version
  • -?
  • --help
pg_combinebackup -o /restored /backup/full /backup/inc1 /backup/inc2
Description :

Combine full + incrémentielles

Options :
  • -o
  • --output
\l
Description :

[psql] Liste les bases de données

Options :
  • +
\l+
Description :

[psql] Liste les bases avec détails

\c mabase
Description :

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

Options :
  • user
  • host
  • port
\c mabase monuser localhost 5432
Description :

[psql] Connexion complète

\dt
Description :

[psql] Liste les tables du schéma courant

Options :
  • +
  • pattern
\dt+
Description :

[psql] Liste les tables avec taille

\d nom_table
Description :

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

Options :
  • +
\d+ nom_table
Description :

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

\di
Description :

[psql] Liste les index

Options :
  • +
  • pattern
\dv
Description :

[psql] Liste les vues

Options :
  • +
  • pattern
\dm
Description :

[psql] Liste les vues matérialisées

Options :
  • +
  • pattern
\df
Description :

[psql] Liste les fonctions

Options :
  • +
  • pattern
\df+
Description :

[psql] Liste les fonctions avec code source

\dn
Description :

[psql] Liste les schémas

Options :
  • +
  • pattern
\du
Description :

[psql] Liste les rôles (utilisateurs)

Options :
  • +
  • pattern
\du+
Description :

[psql] Liste les rôles avec description

\dg
Description :

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

Options :
  • +
\dp
Description :

[psql] Liste les privilèges des tables

Options :
  • pattern
\z
Description :

[psql] Alias de \dp

Options :
  • pattern
\ds
Description :

[psql] Liste les séquences

Options :
  • +
  • pattern
\dS
Description :

[psql] Liste les tables système

Options :
  • +
\db
Description :

[psql] Liste les tablespaces

Options :
  • +
  • pattern
\dD
Description :

[psql] Liste les domaines

Options :
  • +
  • pattern
\dT
Description :

[psql] Liste les types de données

Options :
  • +
  • pattern
\dx
Description :

[psql] Liste les extensions installées

Options :
  • +
  • pattern
\dx+
Description :

[psql] Liste les extensions avec objets

\dy
Description :

[psql] Liste les event triggers

Options :
  • +
  • pattern
\dRp
Description :

[psql] Liste les publications

Options :
  • +
  • pattern
\dRs
Description :

[psql] Liste les souscriptions

Options :
  • +
  • pattern
\sf nom_fonction
Description :

[psql] Affiche le code source d'une fonction

Options :
  • +
\sv nom_vue
Description :

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

Options :
  • +
\dm nom_vue_mat
Description :

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

Options :
  • +
\i fichier.sql
Description :

[psql] Exécute un fichier SQL

\o fichier.txt
Description :

[psql] Redirige la sortie vers un fichier

\o
Description :

[psql] Arrête la redirection de sortie

\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
\copy (SELECT * FROM users) TO 'export.csv' CSV HEADER
Description :

[psql] Exporte une requête en CSV

\x
Description :

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

Options :
  • on
  • off
  • auto
\x auto
Description :

[psql] Affichage étendu automatique

\timing
Description :

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

Options :
  • on
  • off
\set nom_valeur valeur
Description :

[psql] Définit une variable

\unset nom_valeur
Description :

[psql] Supprime une variable

\echo 'message'
Description :

[psql] Affiche un message

\qecho 'message'
Description :

[psql] Affiche dans la sortie de requête

\warn 'message'
Description :

[psql] Affiche un avertissement

\watch 5
Description :

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

Options :
  • intervalle
\g
Description :

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

Options :
  • fichier
  • |commande ⚠️
\gx
Description :

[psql] Exécute en mode étendu

\p
Description :

[psql] Affiche le buffer de requête

\r
Description :

[psql] Efface le buffer de requête

\w fichier.sql
Description :

[psql] Sauvegarde le buffer dans un fichier

\e
Description :

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

Options :
  • fichier
\ef nom_fonction
Description :

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

\ev nom_vue
Description :

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

\encoding
Description :

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

Options :
  • encodage
\encoding UTF8
Description :

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

\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
\pset format html
Description :

[psql] Sortie au format HTML

Options :
  • unaligned
  • aligned
  • wrapped
  • html
  • asciidoc
  • latex
  • troff-ms
\pset pager always
Description :

[psql] Utilise toujours un pager

Options :
  • always
  • never
\pset null '(null)'
Description :

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

\pset title 'Résultats'
Description :

[psql] Définit un titre

\H
Description :

[psql] Active/désactive la sortie HTML

\a
Description :

[psql] Active/désactive l'alignement

\t
Description :

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

\conninfo
Description :

[psql] Affiche les informations de connexion

\q
Description :

[psql] Quitte psql

\! commande
Description :

[psql] Exécute une commande shell

\cd /chemin
Description :

[psql] Change de répertoire

\s
Description :

[psql] Affiche l'historique des commandes

Options :
  • fichier
\s historique.txt
Description :

[psql] Sauvegarde l'historique

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
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

DROP DATABASE mabase
Description :

[SQL] Supprime une base de données

Options :
  • IF EXISTS
  • WITH (FORCE)
DROP DATABASE IF EXISTS mabase WITH (FORCE)
Description :

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

CREATE SCHEMA monschema
Description :

[SQL] Crée un schéma

Options :
  • AUTHORIZATION
  • IF NOT EXISTS
CREATE SCHEMA IF NOT EXISTS monschema AUTHORIZATION monuser
Description :

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

DROP SCHEMA monschema
Description :

[SQL] Supprime un schéma

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
DROP SCHEMA IF EXISTS monschema CASCADE
Description :

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

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

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
CREATE TABLE users (id BIGSERIAL PRIMARY KEY, data JSONB, tags TEXT[], settings HSTORE)
Description :

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

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
CREATE TABLE logs_2024 PARTITION OF logs FOR VALUES FROM ('2024-01-01') TO ('2025-01-01')
Description :

[SQL] Partition pour 2024

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

[SQL] Table temporaire (session)

Options :
  • TEMP
  • TEMPORARY
  • UNLOGGED
  • IF NOT EXISTS
CREATE UNLOGGED TABLE cache (key TEXT PRIMARY KEY, value JSONB)
Description :

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

Options :
  • UNLOGGED
ALTER TABLE users ADD COLUMN age INT
Description :

[SQL] Ajoute une colonne

Options :
  • IF NOT EXISTS
ALTER TABLE users ADD COLUMN age INT DEFAULT 0 NOT NULL
Description :

[SQL] Ajoute avec contraintes

ALTER TABLE users DROP COLUMN age
Description :

[SQL] Supprime une colonne

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
ALTER TABLE users RENAME COLUMN name TO full_name
Description :

[SQL] Renomme une colonne

ALTER TABLE users ALTER COLUMN age TYPE BIGINT
Description :

[SQL] Change le type d'une colonne

Options :
  • USING
ALTER TABLE users ALTER COLUMN age TYPE VARCHAR(10) USING age::VARCHAR(10)
Description :

[SQL] Change le type avec conversion

Options :
  • USING
ALTER TABLE users ALTER COLUMN email SET NOT NULL
Description :

[SQL] Ajoute une contrainte NOT NULL

Options :
  • SET NOT NULL
  • DROP NOT NULL
ALTER TABLE users ALTER COLUMN age SET DEFAULT 18
Description :

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

Options :
  • SET DEFAULT
  • DROP DEFAULT
ALTER TABLE users ADD CONSTRAINT unique_email UNIQUE (email)
Description :

[SQL] Ajoute une contrainte UNIQUE

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

[SQL] Ajoute une clé primaire

Options :
  • USING INDEX TABLESPACE
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
ALTER TABLE users ADD CONSTRAINT age_check CHECK (age >= 0)
Description :

[SQL] Ajoute une contrainte CHECK

Options :
  • NOT VALID
ALTER TABLE users DROP CONSTRAINT age_check
Description :

[SQL] Supprime une contrainte

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
ALTER TABLE users RENAME TO clients
Description :

[SQL] Renomme une table

ALTER TABLE users SET SCHEMA public
Description :

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

DROP TABLE users
Description :

[SQL] Supprime une table

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
TRUNCATE TABLE users
Description :

[SQL] Vide une table

Options :
  • RESTART IDENTITY
  • CONTINUE IDENTITY
  • CASCADE
  • RESTRICT
TRUNCATE TABLE users RESTART IDENTITY CASCADE
Description :

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

CREATE INDEX idx_users_email ON users(email)
Description :

[SQL] Crée un index

Options :
  • UNIQUE
  • CONCURRENTLY
  • IF NOT EXISTS
  • USING
  • TABLESPACE
  • WHERE
  • INCLUDE
CREATE INDEX CONCURRENTLY idx_users_email ON users(email)
Description :

[SQL] Crée un index sans bloquer

Options :
  • CONCURRENTLY
CREATE UNIQUE INDEX idx_users_email ON users(email)
Description :

[SQL] Index unique

Options :
  • UNIQUE
CREATE INDEX idx_users_partial ON users(email) WHERE active = true
Description :

[SQL] Index partiel

Options :
  • WHERE
CREATE INDEX idx_users_gin ON users USING GIN (tags)
Description :

[SQL] Index GIN (tableaux, JSONB)

Options :
  • USING
CREATE INDEX idx_users_gist ON locations USING GIST (coordinates)
Description :

[SQL] Index GiST (géospatial)

Options :
  • USING
CREATE INDEX idx_users_brin ON logs USING BRIN (created_at)
Description :

[SQL] Index BRIN (grandes tables)

Options :
  • USING
CREATE INDEX idx_users_hash ON users USING HASH (email)
Description :

[SQL] Index HASH

Options :
  • USING
CREATE INDEX idx_users_covering ON users(email) INCLUDE (name, age)
Description :

[SQL] Index couvrant (INCLUDE)

Options :
  • INCLUDE
DROP INDEX idx_users_email
Description :

[SQL] Supprime un index

Options :
  • CONCURRENTLY
  • IF EXISTS
  • CASCADE
  • RESTRICT
REINDEX INDEX idx_users_email
Description :

[SQL] Reconstruit un index

Options :
  • CONCURRENTLY
REINDEX TABLE users
Description :

[SQL] Reconstruit tous les index d'une table

Options :
  • CONCURRENTLY
REINDEX SCHEMA public
Description :

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

Options :
  • CONCURRENTLY
REINDEX DATABASE mabase
Description :

[SQL] Reconstruit les index d'une base

Options :
  • CONCURRENTLY
CLUSTER users USING idx_users_email
Description :

[SQL] Réorganise physiquement selon l'index

Options :
  • VERBOSE
VACUUM users
Description :

[SQL] Nettoie les tuples morts

Options :
  • FULL
  • FREEZE
  • VERBOSE
  • ANALYZE
  • SKIP_LOCKED
  • PARALLEL
VACUUM FULL VERBOSE users
Description :

[SQL] VACUUM FULL avec logs

VACUUM FREEZE users
Description :

[SQL] VACUUM avec freeze

ANALYZE users
Description :

[SQL] Met à jour les statistiques

Options :
  • VERBOSE
  • SKIP_LOCKED
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
CREATE OR REPLACE VIEW active_users AS SELECT id, name FROM users WHERE active = true
Description :

[SQL] Remplace une vue existante

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
REFRESH MATERIALIZED VIEW user_stats
Description :

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

Options :
  • CONCURRENTLY
  • WITH DATA
  • WITH NO DATA
REFRESH MATERIALIZED VIEW CONCURRENTLY user_stats
Description :

[SQL] Rafraîchit sans bloquer

Options :
  • CONCURRENTLY
DROP MATERIALIZED VIEW user_stats
Description :

[SQL] Supprime une vue matérialisée

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
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
SELECT nextval('user_id_seq')
Description :

[SQL] Valeur suivante d'une séquence

SELECT currval('user_id_seq')
Description :

[SQL] Valeur courante d'une séquence

ALTER SEQUENCE user_id_seq RESTART WITH 2000
Description :

[SQL] Redémarre une séquence

Options :
  • RESTART
  • RENAME TO
  • OWNED BY
DROP SEQUENCE user_id_seq
Description :

[SQL] Supprime une séquence

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
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
CREATE USER monuser WITH PASSWORD 'secret'
Description :

[SQL] Alias de CREATE ROLE avec LOGIN

ALTER ROLE monuser WITH PASSWORD 'newsecret'
Description :

[SQL] Modifie le mot de passe

ALTER ROLE monuser RENAME TO newuser
Description :

[SQL] Renomme un rôle

DROP ROLE monuser
Description :

[SQL] Supprime un rôle

Options :
  • IF EXISTS
GRANT SELECT, INSERT, UPDATE ON users TO monuser
Description :

[SQL] Donne des privilèges sur une table

Options :
  • WITH GRANT OPTION
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO monuser
Description :

[SQL] Donne tous les droits sur toutes les tables

GRANT USAGE ON SCHEMA public TO monuser
Description :

[SQL] Permet d'utiliser le schéma

GRANT CONNECT ON DATABASE mabase TO monuser
Description :

[SQL] Permet de se connecter à la base

GRANT EXECUTE ON FUNCTION get_users() TO monuser
Description :

[SQL] Permet d'exécuter une fonction

REVOKE INSERT, UPDATE ON users FROM monuser
Description :

[SQL] Révoque des privilèges

Options :
  • GRANT OPTION FOR
  • CASCADE
  • RESTRICT
REVOKE ALL PRIVILEGES ON users FROM monuser
Description :

[SQL] Révoque tous les privilèges

BEGIN
Description :

[SQL] Démarre une transaction

Options :
  • WORK
  • TRANSACTION
  • ISOLATION LEVEL
  • READ ONLY
  • READ WRITE
  • DEFERRABLE
BEGIN ISOLATION LEVEL SERIALIZABLE
Description :

[SQL] Transaction avec isolation SERIALIZABLE

BEGIN READ ONLY
Description :

[SQL] Transaction en lecture seule

COMMIT
Description :

[SQL] Valide une transaction

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

[SQL] Annule une transaction

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

[SQL] Crée un point de sauvegarde

ROLLBACK TO SAVEPOINT sp1
Description :

[SQL] Revient à un point de sauvegarde

RELEASE SAVEPOINT sp1
Description :

[SQL] Supprime un point de sauvegarde

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 ⚠️
EXPLAIN ANALYZE SELECT * FROM users WHERE email = 'test@example.com'
Description :

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

Options :
  • ANALYZE
  • BUFFERS
  • VERBOSE
EXPLAIN (ANALYZE, BUFFERS, VERBOSE) SELECT * FROM users
Description :

[SQL] Analyse détaillée

EXPLAIN (FORMAT JSON) SELECT * FROM users
Description :

[SQL] Plan au format JSON

Options :
  • FORMAT TEXT ⚠️
  • FORMAT XML ⚠️
  • FORMAT YAML ⚠️
SELECT pg_size_pretty(pg_database_size('mabase'))
Description :

[SQL] Taille de la base en format lisible

SELECT pg_size_pretty(pg_total_relation_size('users'))
Description :

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

SELECT pg_size_pretty(pg_relation_size('users'))
Description :

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

SELECT pg_size_pretty(pg_indexes_size('users'))
Description :

[SQL] Taille des index d'une table

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

SELECT * FROM pg_stat_activity
Description :

[SQL] Activité en cours

Options :
  • WHERE state = 'active'
  • WHERE wait_event IS NOT NULL
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid()
Description :

[SQL] Tue toutes les autres connexions

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

SELECT pg_cancel_backend(12345)
Description :

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

SELECT * FROM pg_stat_replication
Description :

[SQL] État de la réplication

SELECT * FROM pg_replication_slots
Description :

[SQL] Slots de réplication

SELECT pg_create_physical_replication_slot('slot1')
Description :

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

SELECT pg_drop_replication_slot('slot1')
Description :

[SQL] Supprime un slot de réplication

SELECT pg_create_logical_replication_slot('slot1', 'test_decoding')
Description :

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

SELECT * FROM pg_publication
Description :

[SQL] Liste les publications

CREATE PUBLICATION pub1 FOR TABLE users, orders
Description :

[SQL] Crée une publication

Options :
  • FOR ALL TABLES
  • FOR TABLE
  • WITH (publish = 'insert,update,delete')
SELECT * FROM pg_subscription
Description :

[SQL] Liste les souscriptions

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)
ALTER SUBSCRIPTION sub1 REFRESH PUBLICATION
Description :

[SQL] Rafraîchit une souscription

Options :
  • WITH (copy_data = false)
DROP SUBSCRIPTION sub1
Description :

[SQL] Supprime une souscription

SELECT pg_reload_conf()
Description :

[SQL] Recharge la configuration

SELECT pg_rotate_logfile()
Description :

[SQL] Rotation des logs

SELECT pg_switch_wal()
Description :

[SQL] Force le switch des WAL

SELECT pg_current_wal_lsn()
Description :

[SQL] LSN courant des WAL

SELECT pg_walfile_name(pg_current_wal_lsn())
Description :

[SQL] Nom du fichier WAL courant

SELECT pg_ls_dir('pg_wal')
Description :

[SQL] Liste les fichiers WAL

SELECT pg_stat_reset()
Description :

[SQL] Réinitialise les statistiques

SELECT pg_stat_reset_shared('bgwriter')
Description :

[SQL] Réinitialise les stats du bgwriter

SELECT pg_sleep(5)
Description :

[SQL] Pause de 5 secondes

SELECT pg_advisory_lock(12345)
Description :

[SQL] Pose un verrou applicatif

SELECT pg_advisory_unlock(12345)
Description :

[SQL] Libère un verrou applicatif

SELECT pg_try_advisory_lock(12345)
Description :

[SQL] Tente de poser un verrou

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

[SQL] Verrous en attente

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

SELECT * FROM pg_available_extensions
Description :

[SQL] Extensions disponibles

CREATE EXTENSION IF NOT EXISTS "uuid-ossp"
Description :

[SQL] Installe l'extension uuid-ossp

Options :
  • SCHEMA
  • VERSION
  • CASCADE
CREATE EXTENSION IF NOT EXISTS postgis
Description :

[SQL] Installe PostGIS

CREATE EXTENSION IF NOT EXISTS pg_stat_statements
Description :

[SQL] Installe pg_stat_statements

DROP EXTENSION "uuid-ossp"
Description :

[SQL] Supprime une extension

Options :
  • IF EXISTS
  • CASCADE
  • RESTRICT
ALTER EXTENSION "uuid-ossp" UPDATE
Description :

[SQL] Met à jour une extension

Options :
  • TO 'version'
SELECT * FROM pg_stat_statements ORDER BY total_time DESC LIMIT 10
Description :

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

SELECT pg_stat_statements_reset()
Description :

[SQL] Réinitialise pg_stat_statements

SHOW config_file
Description :

[SQL] Affiche le chemin du fichier de configuration

SHOW data_directory
Description :

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

SHOW hba_file
Description :

[SQL] Affiche le chemin du fichier pg_hba.conf

SHOW all
Description :

[SQL] Affiche tous les paramètres

SHOW shared_buffers
Description :

[SQL] Affiche un paramètre spécifique

SET work_mem = '64MB'
Description :

[SQL] Modifie un paramètre pour la session

Options :
  • SESSION
  • LOCAL
ALTER SYSTEM SET work_mem = '64MB'
Description :

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

ALTER SYSTEM RESET work_mem
Description :

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

Options :
  • ALL
SELECT * FROM pg_settings WHERE name LIKE '%memory%'
Description :

[SQL] Recherche des paramètres

SELECT * FROM pg_file_settings
Description :

[SQL] Paramètres dans les fichiers de configuration

SELECT current_database()
Description :

[SQL] Base de données courante

SELECT current_user
Description :

[SQL] Utilisateur courant

SELECT session_user
Description :

[SQL] Utilisateur de session

SELECT inet_server_addr()
Description :

[SQL] Adresse IP du serveur

SELECT inet_server_port()
Description :

[SQL] Port du serveur

SELECT inet_client_addr()
Description :

[SQL] Adresse IP du client

SELECT pg_backend_pid()
Description :

[SQL] PID de la session courante

SELECT pg_postmaster_start_time()
Description :

[SQL] Date de démarrage du serveur

SELECT pg_conf_load_time()
Description :

[SQL] Date de chargement de la configuration

SELECT txid_current()
Description :

[SQL] ID de transaction courant

SELECT txid_status(12345)
Description :

[SQL] Statut d'une transaction

SELECT pg_is_in_recovery()
Description :

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

SELECT pg_is_wal_replay_paused()
Description :

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

SELECT pg_promote()
Description :

[SQL] Promeut un standby en primary

Options :
  • wait
  • wait_seconds
SELECT pg_wal_replay_pause()
Description :

[SQL] Met en pause le replay WAL

SELECT pg_wal_replay_resume()
Description :

[SQL] Reprend le replay WAL

Partager