PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Aide-mémoire sur la configuration de PostgreSQL

PostgreSQL est livré avec une tonne de paramètres de configuration, mais avec une documentation éparpillée dans tout le manuel !

Auto-vide

vide automatique Démarre le sous-processus de vide automatique.
autovacuum_analyze_scale_factor Nombre d'insertions, de mises à jour ou de suppressions de tuples avant l'analyse en tant que fraction de reltuples.
autovacuum_analyze_threshold Nombre minimum d'insertions, de mises à jour ou de suppressions de tuples avant l'analyse.
autovacuum_freeze_max_age Âge auquel vider automatiquement une table pour empêcher le bouclage de l'ID de transaction.
autovacuum_max_workers Définit le nombre maximal de processus de travail autovacuum exécutés simultanément.
autovacuum_multixact_freeze_max_age Âge multixact auquel effectuer le nettoyage automatique d'une table pour empêcher le bouclage multixact.
autovacuum_naptime Temps de sommeil entre les exécutions d'autovacuum.
autovacuum_vacuum_cost_delay Délai du coût du vide en millisecondes, pour le vide automatique.
autovacuum_vacuum_cost_limit Montant du coût de l'aspirateur disponible avant la sieste, pour l'aspirateur automatique.
autovacuum_vacuum_scale_factor Nombre de mises à jour ou de suppressions de tuples avant le vide en tant que fraction de reltuples.
autovacuum_vacuum_threshold Nombre minimum de mises à jour ou de suppressions de tuples avant le vide.

Paramètres par défaut de la connexion client / Paramètres régionaux et formatage

client_encoding Définit l'encodage du jeu de caractères du client.
Style de date Définit le format d'affichage des valeurs de date et d'heure.
default_text_search_config Définit la configuration de recherche de texte par défaut.
extra_float_digits Définit le nombre de chiffres affichés pour les valeurs à virgule flottante.
Style d'intervalle Définit le format d'affichage des valeurs d'intervalle.
lc_collate Affiche les paramètres régionaux de l'ordre de classement.
lc_ctype Affiche la classification des caractères et les paramètres régionaux de conversion de casse.
lc_messages Définit la langue dans laquelle les messages sont affichés.
lc_monétaire Définit les paramètres régionaux pour le formatage des montants monétaires.
lc_numeric Définit les paramètres régionaux pour le formatage des nombres.
lc_time Définit les paramètres régionaux pour le formatage des valeurs de date et d'heure.
server_encoding Définit l'encodage du jeu de caractères du serveur (base de données).
Fuseau horaire Définit le fuseau horaire pour l'affichage et l'interprétation des horodatages.
timezone_abbreviations Sélectionne un fichier d'abréviations de fuseaux horaires.

Paramètres par défaut de la connexion client / Autres paramètres par défaut

dynamic_library_path Définit le chemin des modules chargeables dynamiquement.
gin_fuzzy_search_limit Définit le résultat maximum autorisé pour une recherche exacte par GIN.
tcp_keepalives_count Nombre maximal de retransmissions persistantes TCP.
tcp_keepalives_idle Délai entre l'émission de keepalives TCP.
tcp_keepalives_interval Délai entre les retransmissions TCP keepalive.

Paramètres par défaut de la connexion client / Préchargement de la bibliothèque partagée

local_preload_libraries Répertorie les bibliothèques partagées non privilégiées à précharger dans chaque backend.
session_preload_libraries Répertorie les bibliothèques partagées à précharger dans chaque backend.
shared_preload_libraries Répertorie les bibliothèques partagées à précharger sur le serveur.

Paramètres par défaut de la connexion client / Comportement de l'instruction

bytea_output Définit le format de sortie pour bytea.
check_function_bodies Vérifiez les corps de fonction pendant CREATE FUNCTION.
default_tablespace Définit l'espace de table par défaut dans lequel créer des tables et des index.
default_transaction_deferrable Définit le statut différé par défaut des nouvelles transactions.
default_transaction_isolation Définit le niveau d'isolement de transaction de chaque nouvelle transaction.
default_transaction_read_only Définit le statut de lecture seule par défaut des nouvelles transactions.
gin_pending_list_limit Définit la taille maximale de la liste en attente pour l'index GIN.
idle_in_transaction_session_timeout Définit la durée maximale autorisée de toute transaction inactive.
lock_timeout Définit la durée maximale autorisée de toute attente de verrouillage.
search_path Définit l'ordre de recherche de schéma pour les noms qui ne sont pas qualifiés de schéma.
session_replication_role Définit le comportement de la session pour les déclencheurs et les règles de réécriture.
statement_timeout Définit la durée maximale autorisée de toute instruction.
temp_tablespaces Définit le ou les tablespaces à utiliser pour les tables temporaires et les fichiers de tri.
transaction_deferrable S'il faut différer une transaction sérialisable en lecture seule jusqu'à ce qu'elle puisse être exécutée sans échec de sérialisation possible.
transaction_isolation Définit le niveau d'isolement de la transaction actuelle.
transaction_read_only Définit le statut en lecture seule de la transaction en cours.
vacuum_freeze_min_age Âge minimum auquel VACUUM doit geler une ligne de table.
vacuum_freeze_table_age Âge auquel VACUUM doit scanner toute la table pour geler les tuples.
vacuum_multixact_freeze_min_age Âge minimum auquel VACUUM doit geler un MultiXactId dans une ligne de table.
vacuum_multixact_freeze_table_age Âge multixact auquel VACUUM doit scanner toute la table pour geler les tuples.
xmlbinary Définit comment les valeurs binaires doivent être encodées en XML.
xmloption Définit si les données XML dans les opérations d'analyse et de sérialisation implicites doivent être considérées comme des documents ou des fragments de contenu.

Connexions et authentification / Paramètres de connexion

bonjour Active la publicité du serveur via Bonjour.
bonjour_name Définit le nom du service Bonjour.
listen_addresses Définit le nom d'hôte ou la ou les adresses IP à écouter.
max_connexions Définit le nombre maximum de connexions simultanées.
port Définit le port TCP sur lequel le serveur écoute.
superuser_reserved_connections Définit le nombre d'emplacements de connexion réservés aux superutilisateurs.
unix_socket_directories Définit les répertoires où les sockets du domaine Unix seront créés.
unix_socket_group Définit le groupe propriétaire du socket de domaine Unix.
unix_socket_permissions Définit les autorisations d'accès du socket de domaine Unix.

Connexions et authentification / Sécurité et authentification

authentication_timeout Définit le temps maximum autorisé pour terminer l'authentification du client.
db_user_namespace Active les noms d'utilisateur par base de données.
krb_caseins_users Définit si les noms d'utilisateur Kerberos et GSSAPI doivent être traités comme insensibles à la casse.
krb_server_keyfile Définit l'emplacement du fichier de clé du serveur Kerberos.
password_encryption Crypter les mots de passe.
row_security Activer la sécurité des lignes.
ssl Active les connexions SSL.
ssl_ca_file Emplacement du fichier d'autorité de certification SSL.
ssl_cert_file Emplacement du fichier de certificat du serveur SSL.
ssl_ciphers Définit la liste des chiffrements SSL autorisés.
ssl_crl_file Emplacement du fichier de liste de révocation des certificats SSL.
ssl_dh_params_file Emplacement du fichier de paramètres SSL DH.
ssl_ecdh_curve Définit la courbe à utiliser pour ECDH.
ssl_key_file Emplacement du fichier de clé privée du serveur SSL.
ssl_prefer_server_ciphers Donnez la priorité à l'ordre des suites de chiffrement du serveur.

Options pour les développeurs

allow_system_table_mods Permet de modifier la structure des tables système.
ignore_checksum_failure Continue le traitement après un échec de la somme de contrôle.
ignore_system_indexes Désactive la lecture à partir des index système.
post_auth_delay Attend N secondes au démarrage de la connexion après authentification.
pre_auth_delay Attend N secondes au démarrage de la connexion avant l'authentification.
trace_notify Génère une sortie de débogage pour LISTEN et NOTIFY.
trace_recovery_messages Active la journalisation des informations de débogage liées à la récupération.
trace_sort Émettre des informations sur l'utilisation des ressources lors du tri.
wal_consistency_checking Définit les gestionnaires de ressources WAL pour lesquels des vérifications de cohérence WAL sont effectuées.
zero_damaged_pages Continue à traiter les anciens en-têtes de page endommagés.

Gestion des erreurs

exit_on_error Terminer la session en cas d'erreur.
restart_after_crash Réinitialiser le serveur après un crash du backend.

Emplacements des fichiers

config_file Définit le fichier de configuration principal du serveur.
répertoire_données Définit le répertoire de données du serveur.
fichier_pid_externe Écrit le PID du postmaster dans le fichier spécifié.
hba_file Définit le fichier de configuration "hba" du serveur.
ident_file Définit le fichier de configuration "ident" du serveur.

Gestion des verrous

deadlock_timeout Définit le temps d'attente sur un verrou avant de vérifier l'interblocage.
max_locks_per_transaction Définit le nombre maximum de verrous par transaction.
max_pred_locks_per_page Définit le nombre maximum de tuples verrouillés par prédicat par page.
max_pred_locks_per_relation Définit le nombre maximum de pages et de tuples verrouillés par prédicat par relation.
max_pred_locks_per_transaction Définit le nombre maximum de verrous de prédicat par transaction.

Options prédéfinies

block_size Affiche la taille d'un bloc de disque.
data_checksums Indique si les sommes de contrôle des données sont activées pour ce cluster.
debug_assertions Indique si le serveur en cours d'exécution a activé les vérifications d'assertion.
integer_datetimes Les dates et heures sont basées sur des nombres entiers.
max_function_args Affiche le nombre maximum d'arguments de fonction.
max_identifier_length Affiche la longueur maximale de l'identifiant.
max_index_keys Affiche le nombre maximum de clés d'index.
segment_size Affiche le nombre de pages par fichier disque.
version_serveur Affiche la version du serveur.
num_version_serveur Affiche la version du serveur sous forme d'entier.
wal_block_size Affiche la taille de bloc dans le journal d'écriture anticipée.
wal_segment_size Affiche le nombre de pages par segment de journal d'écriture anticipée.

Titre du processus

cluster_name Définit le nom du cluster, qui est inclus dans le titre du processus.
update_process_title Met à jour le titre du processus pour afficher la commande SQL active.

Optimisation des requêtes / Optimiseur de requête génétique

geqo Permet l'optimisation génétique des requêtes.
geqo_effort GEQO :l'effort est utilisé pour définir la valeur par défaut des autres paramètres GEQO.
geqo_generations GEQO :nombre d'itérations de l'algorithme.
geqo_pool_size GEQO :nombre d'individus dans la population.
geqo_seed GEQO :graine pour la sélection de chemin aléatoire.
geqo_selection_bias GEQO :pression sélective au sein de la population.
geqo_threshold Définit le seuil d'éléments FROM au-delà duquel GEQO est utilisé.

Optimisation des requêtes/Autres options du planificateur

constraint_exclusion Permet au planificateur d'utiliser des contraintes pour optimiser les requêtes.
cursor_tuple_fraction Définit l'estimation du planificateur de la fraction des lignes d'un curseur qui sera récupérée.
default_statistics_target Définit l'objectif de statistiques par défaut.
force_parallel_mode Force l'utilisation d'installations de requêtes parallèles.
from_collapse_limit Définit la taille de la liste FROM au-delà de laquelle les sous-requêtes ne sont pas réduites.
join_collapse_limit Définit la taille de la liste FROM au-delà de laquelle les constructions JOIN ne sont pas aplaties.

Réglage des requêtes / Constantes de coût du planificateur

cpu_index_tuple_cost Définit l'estimation du planificateur du coût de traitement de chaque entrée d'index lors d'une analyse d'index.
cpu_operator_cost Définit l'estimation du planificateur du coût de traitement de chaque appel d'opérateur ou de fonction.
cpu_tuple_cost Définit l'estimation du planificateur du coût de traitement de chaque tuple (ligne).
effective_cache_size Définit l'hypothèse du planificateur concernant la taille du cache disque.
min_parallel_index_scan_size Définit la quantité minimale de données d'index pour une analyse parallèle.
min_parallel_table_scan_size Définit la quantité minimale de données de table pour une analyse parallèle.
parallel_setup_cost Définit l'estimation du planificateur du coût de démarrage des processus de travail pour les requêtes parallèles.
parallel_tuple_cost Définit l'estimation du planificateur du coût de passage de chaque tuple (ligne) du nœud de calcul au backend maître.
random_page_cost Définit l'estimation du planificateur du coût d'une page de disque extraite de manière non séquentielle.
seq_page_cost Définit l'estimation du planificateur du coût d'une page de disque extraite de manière séquentielle.

Réglage des requêtes/configuration de la méthode du planificateur

enable_bitmapscan Permet au planificateur d'utiliser des plans de numérisation bitmap.
enable_gathermerge Permet au planificateur d'utiliser les plans de fusion de collecte.
enable_hashagg Permet au planificateur d'utiliser des plans d'agrégation hachés.
enable_hashjoin Permet au planificateur d'utiliser les plans de jointure par hachage.
enable_indexonlyscan Permet au planificateur d'utiliser des plans d'analyse d'index uniquement.
enable_indexscan Permet au planificateur d'utiliser les plans d'analyse d'index.
enable_material Permet l'utilisation de la matérialisation par le planificateur.
enable_mergejoin Permet au planificateur d'utiliser les plans de jointure par fusion.
enable_nestloop Permet au planificateur d'utiliser des plans de jointure en boucle imbriquée.
enable_seqscan Permet au planificateur d'utiliser des plans d'analyse séquentielle.
enable_sort Permet au planificateur d'utiliser des étapes de tri explicites.
enable_tidscan Permet au planificateur d'utiliser les plans d'analyse TID.

Réplication

track_commit_timestamp Collecte l'heure de validation de la transaction.

Réplication / Serveur maître

synchronous_standby_names Nombre de standbys synchrones et liste des noms des potentiels synchrones.
vacuum_defer_cleanup_age Nombre de transactions par lesquelles le nettoyage VACUUM et HOT doit être différé, le cas échéant.

Réplication / Serveurs d'envoi

max_replication_slots Définit le nombre maximum d'emplacements de réplication définis simultanément.
max_wal_senders Définit le nombre maximum de processus d'envoi WAL exécutés simultanément.
wal_keep_segments Définit le nombre de fichiers WAL conservés pour les serveurs de secours.
wal_sender_timeout Définit le temps d'attente maximum pour la réplication WAL.

Serveurs de réplication / de secours

hot_standby Autorise les connexions et les requêtes pendant la récupération.
hot_standby_feedback Autorise les commentaires d'un serveur de secours vers le serveur principal, ce qui évite les conflits de requêtes.
max_standby_archive_delay Définit le délai maximum avant l'annulation des requêtes lorsqu'un serveur de secours automatique traite des données WAL archivées.
max_standby_streaming_delay Définit le délai maximum avant l'annulation des requêtes lorsqu'un serveur de secours automatique traite des données WAL diffusées en continu.
wal_receiver_status_interval Définit l'intervalle maximum entre les rapports d'état du récepteur WAL au primaire.
wal_receiver_timeout Définit le temps d'attente maximum pour recevoir des données du primaire.
wal_retrieve_retry_interval Définit le temps d'attente avant de réessayer de récupérer les WAL après une tentative infructueuse.

Réplication / Abonnés

max_logical_replication_workers Nombre maximal de processus de travail de réplication logique.
max_sync_workers_per_abonnement Nombre maximum de travailleurs de synchronisation de table par abonnement.

Rapports et journalisation / Quoi enregistrer

nom_application Définit le nom de l'application à signaler dans les statistiques et les journaux.
debug_pretty_print Analyse des retraits et affichages de l'arborescence du plan.
debug_print_parse Journalise l'arborescence d'analyse de chaque requête.
debug_print_plan Enregistre le plan d'exécution de chaque requête.
debug_print_rewrite Journalise l'arborescence d'analyse réécrite de chaque requête.
log_autovacuum_min_duration Définit le temps d'exécution minimum au-dessus duquel les actions d'autovacuum seront enregistrées.
log_checkpoints Journalise chaque point de contrôle.
log_connections Journalise chaque connexion réussie.
log_disconnections Enregistre la fin d'une session, y compris la durée.
log_duration Enregistre la durée de chaque instruction SQL terminée.
log_error_verbosity Définit la verbosité des messages enregistrés.
log_hostname Enregistre le nom d'hôte dans les journaux de connexion.
log_line_prefix Contrôle les informations préfixées à chaque ligne de journal.
log_lock_waits Journalise les longues attentes de verrouillage.
log_replication_commands Journalise chaque commande de réplication.
log_statement Définit le type de relevés enregistrés.
log_temp_files Enregistrer l'utilisation de fichiers temporaires supérieurs à ce nombre de kilo-octets.
log_timezone Définit le fuseau horaire à utiliser dans les messages de journal.

Rapports et journalisation / Quand enregistrer

client_min_messages Définit les niveaux de message qui sont envoyés au client.
log_min_duration_statement Définit le temps d'exécution minimum au-delà duquel les instructions seront enregistrées.
log_min_error_statement Provoque la journalisation de toutes les instructions générant une erreur à ce niveau ou au-dessus.
log_min_messages Définit les niveaux de message qui sont consignés.

Rapports et journalisation/Où se connecter

event_source Définit le nom de l'application utilisée pour identifier les messages PostgreSQL dans le journal des événements.
log_destination Définit la destination de la sortie du journal du serveur.
log_directory Définit le répertoire de destination des fichiers journaux.
log_file_mode Définit les autorisations de fichier pour les fichiers journaux.
log_filename Définit le modèle de nom de fichier pour les fichiers journaux.
log_rotation_age La rotation automatique des fichiers journaux se produira après N minutes.
log_rotation_size La rotation automatique des fichiers journaux se produira après N kilo-octets.
log_truncate_on_rotation Tronquer les fichiers journaux existants du même nom lors de la rotation des journaux.
logging_collector Démarrer un sous-processus pour capturer la sortie stderr et/ou les csvlogs dans les fichiers journaux.
syslog_facility Définit la "fonctionnalité" syslog à utiliser lorsque syslog est activé.
syslog_ident Définit le nom du programme utilisé pour identifier les messages PostgreSQL dans syslog.
syslog_sequence_numbers Ajouter un numéro de séquence aux messages syslog pour éviter la suppression des doublons.
syslog_split_messages Divisez les messages envoyés à syslog par lignes et pour tenir dans 1024 octets.

Utilisation des ressources / Comportement asynchrone

backend_flush_after Nombre de pages après lesquelles les écritures précédemment effectuées sont vidées sur le disque.
effective_io_concurrency Nombre de requêtes simultanées pouvant être gérées efficacement par le sous-système de disque.
max_parallel_workers Définit le nombre maximum de travailleurs parallèles pouvant être actifs en même temps.
max_parallel_workers_per_gather Définit le nombre maximum de processus parallèles par nœud exécuteur.
max_worker_processes Nombre maximal de processus de travail simultanés.
old_snapshot_threshold Délai avant qu'un instantané ne soit trop ancien pour lire les pages modifiées après la prise de l'instantané.

Utilisation des ressources / Auteur d'arrière-plan

bgwriter_delay Temps de sommeil du rédacteur d'arrière-plan entre les tours.
bgwriter_flush_after Nombre de pages après lesquelles les écritures précédemment effectuées sont vidées sur le disque.
bgwriter_lru_maxpages Nombre maximum de pages LRU à vider par tour.
bgwriter_lru_multiplier Multiple de l'utilisation moyenne du tampon à libérer par tour.

Utilisation des ressources / Délai de vide basé sur les coûts

vacuum_cost_delay Délai de coût de vide en millisecondes.
vacuum_cost_limit Montant du coût de l'aspirateur disponible avant la sieste.
vacuum_cost_page_dirty Coût de vide pour une page souillée par le vide.
vacuum_cost_page_hit Coût de vide pour une page trouvée dans le tampon cache.
vacuum_cost_page_miss Coût de vide pour une page introuvable dans le tampon cache.

Utilisation des ressources / Disque

temp_file_limit Limite la taille totale de tous les fichiers temporaires utilisés par chaque processus.

Utilisation des ressources / Ressources du noyau

max_files_per_process Définit le nombre maximum de fichiers ouverts simultanément pour chaque processus serveur.

Utilisation des ressources / Mémoire

autovacuum_work_mem Définit la mémoire maximale à utiliser par chaque processus de travail autovacuum.
dynamic_shared_memory_type Sélectionne l'implémentation de mémoire partagée dynamique utilisée.
énormes_pages Utilisation de pages volumineuses sous Linux.
maintenance_work_mem Définit la mémoire maximale à utiliser pour les opérations de maintenance.
max_prepared_transactions Définit le nombre maximum de transactions préparées simultanément.
max_stack_depth Définit la profondeur de pile maximale, en kilo-octets.
replacement_sort_tuples Définit le nombre maximum de tuples à trier en utilisant la sélection de remplacement.
shared_buffers Définit le nombre de mémoires tampons partagées utilisées par le serveur.
temp_buffers Définit le nombre maximum de tampons temporaires utilisés par chaque session.
track_activity_query_size Définit la taille réservée pour pg_stat_activity.query, en octets.
work_mem Définit la mémoire maximale à utiliser pour les espaces de travail de requête.

Statistiques / Suivi

log_executor_stats Écrit les statistiques de performances de l'exécuteur dans le journal du serveur.
log_parser_stats Écrit les statistiques de performances de l'analyseur dans le journal du serveur.
log_planner_stats Écrit les statistiques de performances du planificateur dans le journal du serveur.
log_statement_stats Écrit des statistiques de performances cumulées dans le journal du serveur.

Statistics / Query and Index Statistics Collector

stats_temp_directory Écrit des fichiers de statistiques temporaires dans le répertoire spécifié.
track_activities Collecte des informations sur l'exécution des commandes.
track_counts Collecte des statistiques sur l'activité de la base de données.
track_functions Collecte des statistiques au niveau de la fonction sur l'activité de la base de données.
track_io_timing Collecte des statistiques de synchronisation pour l'activité d'E/S de la base de données.

Compatibilité des versions et des plates-formes / Autres plates-formes et clients

transform_null_equals Traite "expr=NULL" comme "expr IS NULL".

Compatibilité des versions et des plates-formes / Versions précédentes de PostgreSQL

array_nulls Activer la saisie d'éléments NULL dans les tableaux.
antislash_quote Définit si "'" est autorisé dans les littéraux de chaîne.
default_with_oids Créer de nouvelles tables avec des OID par défaut.
escape_string_warning Avertir des échappements de barre oblique inverse dans les littéraux de chaîne ordinaires.
lo_compat_privileges Active le mode de compatibilité descendante pour les vérifications de privilèges sur les objets volumineux.
operator_precedence_warning Émettre un avertissement pour les constructions qui ont changé de sens depuis PostgreSQL 9.4.
quote_all_identifiers Lors de la génération de fragments SQL, mettez tous les identifiants entre guillemets.
chaînes_conformes_standard Provoque le traitement littéral des barres obliques inversées par les chaînes '...'.
synchronize_seqscans Activer les analyses séquentielles synchronisées.

Journal d'écriture anticipée / Archivage

archive_command Définit la commande shell qui sera appelée pour archiver un fichier WAL.
archive_mode Permet l'archivage des fichiers WAL en utilisant archive_command.
archive_timeout Force le passage au fichier WAL suivant si un nouveau fichier n'a pas été démarré dans les N secondes.

Journal d'écriture anticipée/points de contrôle

checkpoint_completion_target Temps passé à vider les tampons modifiés pendant le point de contrôle, en tant que fraction de l'intervalle du point de contrôle.
checkpoint_flush_after Nombre de pages après lesquelles les écritures précédemment effectuées sont vidées sur le disque.
checkpoint_timeout Définit le temps maximum entre les points de contrôle WAL automatiques.
checkpoint_warning Active les avertissements si les segments de point de contrôle sont remplis plus fréquemment que cela.
max_wal_size Définit la taille des WAL qui déclenche un point de contrôle.
min_wal_size Définit la taille minimale à laquelle réduire le WAL.

Journal d'écriture anticipée / Paramètres

commit_delay Définit le délai en microsecondes entre la validation de la transaction et le vidage des WAL sur le disque.
commit_siblings Définit le minimum de transactions ouvertes simultanées avant d'effectuer commit_delay.
fsync Force la synchronisation des mises à jour sur le disque.
écritures_full_page Écrit des pages entières dans WAL lors de la première modification après un point de contrôle.
synchronous_commit Définit le niveau de synchronisation de la transaction actuelle.
wal_buffers Sets the number of disk-page buffers in shared memory for WAL.
wal_compression Compresses full-page writes written in WAL file.
wal_level Set the level of information written to the WAL.
wal_log_hints Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modifications.
wal_sync_method Selects the method used for forcing WAL updates to disk.
wal_writer_delay Time between WAL flushes performed in the WAL writer.
wal_writer_flush_after Amount of WAL written out by WAL writer that triggers a flush.