Aide‐mémoire PostgreSQL 16 Répertoires et fichiers Exemples de commandes
• SET work_mem = '100MB';
Connexions des clients Création avec initdb
• ALTER SYSTEM SET work_mem = '100MB';
• -h : nom d’hôte ou adresse IP • -D : répertoire des données ($PGDATA) • SET search_path TO public, <schema1>,
• -k : active les sommes de contrôle des pages <schema2>;
• -p : numéro de port
• -X : répertoire des journaux de transactions • ALTER DATABASE <dbname> SET search_path
• -U : nom du rôle
• -A : mode d’authentification par défaut FROM CURRENT;
• -d : nom de la base de données • --wal-segsize : taille d’un segment de WAL • ALTER TABLE <table> SET
• chaine de connexion : “host=<nom> (autovacuum_vacuum_scale_factor = 0.1);
port=<numéro> user=<rôle> dbname=<nom>” Mise à jour avec pg_upgrade • CREATE INDEX on <table>
• fichier de service : ~/.pg_service.conf USING btree|gist|gin|brin
• -b, -B : ancienne et nouvelle commandes
• fichier de service global : pg_service.conf : • -d, -D : ancien et nouveau répertoire des données (<column>, … ) [WHERE <predicate>];
◦ Redhat : /etc/sysconfig/pgsql/ • -c : vérifie seulement
◦ Debian : /etc/postgresql-common/ • -k : utilise des hardlink plutôt qu’une copie Répertoire des journaux d’activité
Répertoire par défaut • Redhat : /var/lib/pgsql/16/data/log
Client psql • Redhat : /var/lib/pgsql/16/data
• Debian : /var/log/postgresql/
Arguments • Debian : /var/lib/postgresql/16/main
Catalogue
• -c '<sql>' : exécute une commande Contenu
• -f <fichier> : exécute un fichier • pg_settings : paramètres de configuration
• base : bases de données et données
• -1 : exécute les ordres dans une transaction • pg_stat_activity : sessions en cours
• pg_wal : journaux de transactions
• -s : exécute les ordres du fichier en mode pas à pas • pg_locks : verrous en cours
Fichiers de configuration • pg_stat_user_tables : tables et statistiques
Commandes
• pg_stat_replication : statut de la réplication
• \c [dbname] [username] [host] [port] • pg_hba.conf : gestion de l’authentification
• \c chaineconn : ouvre une nouvelle connexion • [Link] : fichier principal
• [Link] : utilisé par ALTER SYSTEM Requêtes utiles
• \conninfo : affiche la connexion courante
• \l : liste les bases de données de l’instance Répertoire par défaut Requêtes en cours
• \du, \dg, \drg : liste les roles et les appartenances
• \dn : liste les schémas • Redhat : /var/lib/pgsql/16/data SELECT datname, pid, query_id, query_start,
• \dt : liste les tables visibles (avec search_path) • Debian : /etc/postgresql/16/main wait_event_type, wait_event,
• \dP : liste les tables partitionnées state, query
Paramètres principaux FROM pg_stat_activity
• \dx : liste les extensions installées
• \df : liste les fonctions visibles • shared_buffers : mémoire partagée WHERE backend_type='client backend'
• \d[+] <objet> : décrit l’objet [avec détails] • work_mem : mémoire pour les tris ou les hashages AND pid != pg_backend_pid();
• \i <fichier> : exécute le fichier • maintenance_work_mem : mémoire par VACUUM Verrous en cours
• \x [on|auto|off] : affichage étendu • autovacuum_[vacuum|analyze]_scale_factor :
• \timing [on|off] : affiche le temps d’exécution ratio d’une table pour déclencher un VACUUM ou un SELECT datname, pid, backend_start, wait_event,
• \gdesc : affiche les colonnes de la requête ANALYZE state, relation::regclass, mode, granted
• \? : aide sur les commandes psql • max_wal_size, checkpoint_timeout : déclenche FROM pg_locks l
• \h : aide sur les ordres SQL un CHECKPOINT JOIN pg_stat_activity a USING (pid)
• \q ou quit; ou exit; : quitter • default_statistics_target : taille des stats WHERE pid <> pg_backend_pid();
© 2023 LOXODATA, sous license CC BY-NC-SA 4.0
Fonctions SQL Restauration de sauvegarde logique : pg_restore
•
•
pg_reload_conf() : relire la configuration
pg_cancel_backend(pid) : annuler une requête
•
•
-F c|t|d : format de la sauvegarde
-l : extrait le catalogue
• -L <fichier> : utilise le catalogue
LOXODATA
• pg_terminate_backend(pid) : terminer • -C : crée la base de données Votre partenaire PostgreSQL
une session • -j N : nombre de connexions utilisées
• pg_create_restore_point(text) : créer un
point d’enregistrement pour le PITR pg_restore -l [Link] \
• pg_is_in_recovery() : instance en standby ? > [Link]
pg_restore -L [Link] -j4 \
• pg_wal_replay_pause() : pause de réplication
-C -d postgres [Link]
• pg_wal_replay_resume() : reprise de réplication
• pg_create_physical_replication_slot Sauvegarde physique : pg_basebackup
(name) : créer un slot de réplication
• -F t|p : format de sauvegarde
• pg_drop_replication_slot(name) : supprimer
• -r <num> : débit maximum
un slot de réplication
• -X fetch|stream|none : récupération des WAL
• -c fast|spread : type de CHECKPOINT
Sauvegardes • -l text : label de la sauvegarde
• -R : crée [Link] et écrit la configuration
Sauvegarde logique : pg_dump de restauration dans [Link]
• -P : affiche la progression de la sauvegarde
• -F p|c|t|d :
◦ plain : texte SQL
◦ custom : binaire compressé
pg_basebackup -Fp -X stream -c fast \
-l '[Link]' -R -P PostgreSQL 16
◦ tar : fichier TAR
◦ directory : répertoire compressé Contrôle depuis le système Aide-mémoire
• -j N : nombre de connexions utilisées SystemD
• -f : fichier de sauvegarde systemctl restart|reload|start|stop|status \
• -c : ajoute les commandes DROP des objets postgresql-16
• -C : ajoute la création de la base de données Debian
• -n, -N : inclus ou exclus le schéma indiqué pg_ctlcluster 16 main \
• -t, -T : inclus ou exclus la table indiquée restart|reload|start|stop|status
• -s : ne sauvegarde que le schéma, pas les données Scripts Debian
• -a : ne sauvegarde que les données, pas le schéma
• pg_lsclusters : liste les instances existantes
• -Z : compression gzip, lz4 ou zstd • pg_createcluster : crée une instance
• pg_dropcluster : détruit une instance
pg_dump -Fc -j4 -Z zstd -f [Link] • pg_upgradecluster : met à jour vers une nouvelle
pg_dumpall -g -f [Link] version majeure
contact@[Link] +33 1 797 2 5775
© 2023 LOXODATA, sous license CC BY-NC-SA 4.0
[Link]