|
# ----------------------------- |
|
# PostgreSQL configuration file |
|
# ----------------------------- |
|
# |
|
# This file consists of lines of the form: |
|
# |
|
# name = value |
|
# |
|
# (The "=" is optional.) Whitespace may be used. Comments are introduced with |
|
# "#" anywhere on a line. The complete list of parameter names and allowed |
|
# values can be found in the PostgreSQL documentation. |
|
# |
|
# The commented-out settings shown in this file represent the default values. |
|
# Re-commenting a setting is NOT sufficient to revert it to the default value; |
|
# you need to reload the server. |
|
# |
|
# This file is read on server startup and when the server receives a SIGHUP |
|
# signal. If you edit the file on a running system, you have to SIGHUP the |
|
# server for the changes to take effect, or use "pg_ctl reload". Some |
|
# parameters, which are marked below, require a server shutdown and restart to |
|
# take effect. |
|
# |
|
# Any parameter can also be given as a command-line option to the server, e.g., |
|
# "postgres -c log_connections=on". Some parameters can be changed at run time |
|
# with the "SET" SQL command. |
|
# |
|
# Memory units: kB = kilobytes Time units: ms = milliseconds |
|
# MB = megabytes s = seconds |
|
# GB = gigabytes min = minutes |
|
# h = hours |
|
# d = days |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# FILE LOCATIONS |
|
#------------------------------------------------------------------------------ |
|
|
|
# The default values of these variables are driven from the -D command-line |
|
# option or PGDATA environment variable, represented here as ConfigDir. |
|
|
|
#data_directory = 'ConfigDir' # use data in another directory |
|
# (change requires restart) |
|
#hba_file = 'ConfigDir/pg_hba.conf' # host-based authentication file |
|
# (change requires restart) |
|
#ident_file = 'ConfigDir/pg_ident.conf' # ident configuration file |
|
# (change requires restart) |
|
|
|
# If external_pid_file is not explicitly set, no extra PID file is written. |
|
#external_pid_file = '(none)' # write an extra PID file |
|
# (change requires restart) |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# CONNECTIONS AND AUTHENTICATION |
|
#------------------------------------------------------------------------------ |
|
|
|
# - Connection Settings - |
|
|
|
listen_addresses = '*' # what IP address(es) to listen on; |
|
# comma-separated list of addresses; |
|
# defaults to 'localhost', '*' = all |
|
# (change requires restart) |
|
#port = 5432 # (change requires restart) |
|
max_connections = 100 # (change requires restart) |
|
# Note: Increasing max_connections costs ~400 bytes of shared memory per |
|
# connection slot, plus lock space (see max_locks_per_transaction). |
|
#superuser_reserved_connections = 3 # (change requires restart) |
|
#unix_socket_directory = '' # (change requires restart) |
|
#unix_socket_group = '' # (change requires restart) |
|
#unix_socket_permissions = 0777 # begin with 0 to use octal notation |
|
# (change requires restart) |
|
#bonjour_name = '' # defaults to the computer name |
|
# (change requires restart) |
|
|
|
# - Security and Authentication - |
|
|
|
#authentication_timeout = 1min # 1s-600s |
|
#ssl = off # (change requires restart) |
|
#ssl_ciphers = 'ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH' # allowed SSL ciphers |
|
# (change requires restart) |
|
#ssl_renegotiation_limit = 512MB # amount of data between renegotiations |
|
#password_encryption = on |
|
#db_user_namespace = off |
|
|
|
# Kerberos and GSSAPI |
|
#krb_server_keyfile = '' |
|
#krb_srvname = 'postgres' # (Kerberos only) |
|
#krb_caseins_users = off |
|
|
|
# - TCP Keepalives - |
|
# see "man 7 tcp" for details |
|
|
|
#tcp_keepalives_idle = 0 # TCP_KEEPIDLE, in seconds; |
|
# 0 selects the system default |
|
#tcp_keepalives_interval = 0 # TCP_KEEPINTVL, in seconds; |
|
# 0 selects the system default |
|
#tcp_keepalives_count = 0 # TCP_KEEPCNT; |
|
# 0 selects the system default |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# RESOURCE USAGE (except WAL) |
|
#------------------------------------------------------------------------------ |
|
|
|
# - Memory - |
|
|
|
shared_buffers = 32MB # min 128kB |
|
# (change requires restart) |
|
#temp_buffers = 8MB # min 800kB |
|
#max_prepared_transactions = 0 # zero disables the feature |
|
# (change requires restart) |
|
# Note: Increasing max_prepared_transactions costs ~600 bytes of shared memory |
|
# per transaction slot, plus lock space (see max_locks_per_transaction). |
|
# It is not advisable to set max_prepared_transactions nonzero unless you |
|
# actively intend to use prepared transactions. |
|
#work_mem = 1MB # min 64kB |
|
#maintenance_work_mem = 16MB # min 1MB |
|
#max_stack_depth = 2MB # min 100kB |
|
|
|
# - Kernel Resource Usage - |
|
|
|
#max_files_per_process = 1000 # min 25 |
|
# (change requires restart) |
|
#shared_preload_libraries = '' # (change requires restart) |
|
|
|
# - Cost-Based Vacuum Delay - |
|
|
|
#vacuum_cost_delay = 0ms # 0-100 milliseconds |
|
#vacuum_cost_page_hit = 1 # 0-10000 credits |
|
#vacuum_cost_page_miss = 10 # 0-10000 credits |
|
#vacuum_cost_page_dirty = 20 # 0-10000 credits |
|
#vacuum_cost_limit = 200 # 1-10000 credits |
|
|
|
# - Background Writer - |
|
|
|
#bgwriter_delay = 200ms # 10-10000ms between rounds |
|
#bgwriter_lru_maxpages = 100 # 0-1000 max buffers written/round |
|
#bgwriter_lru_multiplier = 2.0 # 0-10.0 multipler on buffers scanned/round |
|
|
|
# - Asynchronous Behavior - |
|
|
|
#effective_io_concurrency = 1 # 1-1000. 0 disables prefetching |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# WRITE AHEAD LOG |
|
#------------------------------------------------------------------------------ |
|
|
|
# - Settings - |
|
|
|
#fsync = on # turns forced synchronization on or off |
|
#synchronous_commit = on # immediate fsync at commit |
|
#wal_sync_method = fsync # the default is the first option |
|
# supported by the operating system: |
|
# open_datasync |
|
# fdatasync |
|
# fsync |
|
# fsync_writethrough |
|
# open_sync |
|
#full_page_writes = on # recover from partial page writes |
|
#wal_buffers = 64kB # min 32kB |
|
# (change requires restart) |
|
#wal_writer_delay = 200ms # 1-10000 milliseconds |
|
|
|
#commit_delay = 0 # range 0-100000, in microseconds |
|
#commit_siblings = 5 # range 1-1000 |
|
|
|
# - Checkpoints - |
|
|
|
#checkpoint_segments = 3 # in logfile segments, min 1, 16MB each |
|
#checkpoint_timeout = 5min # range 30s-1h |
|
#checkpoint_completion_target = 0.5 # checkpoint target duration, 0.0 - 1.0 |
|
#checkpoint_warning = 30s # 0 disables |
|
|
|
# - Archiving - |
|
|
|
#archive_mode = off # allows archiving to be done |
|
# (change requires restart) |
|
#archive_command = '' # command to use to archive a logfile segment |
|
#archive_timeout = 0 # force a logfile segment switch after this |
|
# number of seconds; 0 disables |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# QUERY TUNING |
|
#------------------------------------------------------------------------------ |
|
|
|
# - Planner Method Configuration - |
|
|
|
#enable_bitmapscan = on |
|
#enable_hashagg = on |
|
#enable_hashjoin = on |
|
#enable_indexscan = on |
|
#enable_mergejoin = on |
|
#enable_nestloop = on |
|
#enable_seqscan = on |
|
#enable_sort = on |
|
#enable_tidscan = on |
|
|
|
# - Planner Cost Constants - |
|
|
|
#seq_page_cost = 1.0 # measured on an arbitrary scale |
|
#random_page_cost = 4.0 # same scale as above |
|
#cpu_tuple_cost = 0.01 # same scale as above |
|
#cpu_index_tuple_cost = 0.005 # same scale as above |
|
#cpu_operator_cost = 0.0025 # same scale as above |
|
#effective_cache_size = 128MB |
|
|
|
# - Genetic Query Optimizer - |
|
|
|
#geqo = on |
|
#geqo_threshold = 12 |
|
#geqo_effort = 5 # range 1-10 |
|
#geqo_pool_size = 0 # selects default based on effort |
|
#geqo_generations = 0 # selects default based on effort |
|
#geqo_selection_bias = 2.0 # range 1.5-2.0 |
|
|
|
# - Other Planner Options - |
|
|
|
#default_statistics_target = 100 # range 1-10000 |
|
#constraint_exclusion = partition # on, off, or partition |
|
#cursor_tuple_fraction = 0.1 # range 0.0-1.0 |
|
#from_collapse_limit = 8 |
|
#join_collapse_limit = 8 # 1 disables collapsing of explicit |
|
# JOIN clauses |
|
|
|
|
|
#------------------------------------------------------------------------------ |
|
# ERROR REPORTING AND LOGGING |
|
#------------------------------------------------------------------------------ |
|
|
|
# - Where to Log - |
|
|
|
#log_destination = 'stderr' # Valid values are combinations of |
|
# stderr, csvlog, syslog and eventlog, |
|
# depending on platform. csvlog |
|
# requires logging_collector to be on. |
|
|
|
# This is used when logging to stderr: |
|
logging_collector = on # Enable capturing of stderr and csvlog |
|
# into log files. Required to be on for |
|
# csvlogs. |
|
# (change requires restart) |
|
|
|
# These are only used if logging_collector is on: |
|
log_directory = 'pg_log' # directory where log files are written, |
|
# can be absolute or relative to PGDATA |
|
log_filename = 'postgresql-%a.log' # log file name pattern, |
|
# can include strftime() escapes |
|
log_truncate_on_rotation = on # If on, an existing log file of the |
|
# same name as the new log file will be |
|
# truncated rather than appended to. |
|
# But such truncation only occurs on |
|
# time-driven rotation, not on restarts |
|
# or size-driven rotation. Default is |
|
# off, meaning append to existing files |
|
# in all cases. |
|
log_rotation_age = 1d # Automatic rotation of logfiles will |
|
# happen after that time. 0 disables. |
|
log_rotation_size = 0 # Automatic rotation of logfiles will |
|
# happen after that much log output. |
|
# 0 disables. |
|
|
|
# These are relevant when logging to syslog: |
|
#syslog_facility = 'LOCAL0' |
|
#syslog_ident = 'postgres' |
|
|
|
#silent_mode = off # Run server silently. |
|
# DO NOT USE without syslog or |
|
# logging_collector |
|
# (change requires restart) |
|
|
|
|
|
# - When to Log - |
|
|
|
#client_min_messages = notice # values in order of decreasing detail: |
|
# debug5 |
|
# debug4 |
|
# debug3 |
|
# debug2 |
|
# debug1 |
|
# log |
|
# notice |
|
# warning |
|
# error |
|
|
|
#log_min_messages = warning # values in order of decreasing detail: |
|
# debug5 |
|
# debug4 |
|
# debug3 |
|
# debug2 |
|
# debug1 |
|
# info |
|
# notice |
|
# warning |
|
# error |
|