postgresql.conf.sample 13.3 KB
Newer Older
1
# -----------------------------
2 3 4
# PostgreSQL configuration file
# -----------------------------
#
5
# This file consists of lines of the form:
6 7 8
#
#   name = value
#
9 10 11 12 13
# (The '=' is optional.) White space may be used. Comments are introduced
# with '#' anywhere on a line. The complete list of option names and
# allowed values can be found in the PostgreSQL documentation. The
# commented-out settings shown in this file represent the default values.
#
14 15 16
# Please note that re-commenting a setting is NOT sufficient to revert it
# to the default value, unless you restart the postmaster.
#
17
# Any option can also be given as a command line switch to the
18
# postmaster, e.g. 'postmaster -c log_connections=on'. Some options
19
# can be changed at run-time with the 'SET' SQL command.
20 21 22 23
#
# This file is read on postmaster startup and when the postmaster
# receives a SIGHUP. If you edit the file on a running system, you have 
# to SIGHUP the postmaster for the changes to take effect, or use 
24 25
# "pg_ctl reload". Some settings, such as listen_address, require
# a postmaster shutdown and restart to take effect.
26 27


28
#---------------------------------------------------------------------------
29
# FILE LOCATIONS
30 31
#---------------------------------------------------------------------------

32
# The default values of these variables are driven from the -D command line
33
# switch or PGDATA environment variable, represented here as ConfigDir.
34

35 36 37
#data_directory = 'ConfigDir'		# use data in another directory
#hba_file = 'ConfigDir/pg_hba.conf'	# host-based authentication file
#ident_file = 'ConfigDir/pg_ident.conf	# IDENT configuration file
38

39
# If external_pid_file is not explicitly set, no extra pid file is written.
40
#external_pid_file = '(none)'		# write an extra pid file
41 42


43
#---------------------------------------------------------------------------
44
# CONNECTIONS AND AUTHENTICATION
45 46 47
#---------------------------------------------------------------------------

# - Connection Settings -
48

49 50
#listen_addresses = 'localhost'		# what IP interface(s) to listen on; 
					# defaults to localhost, '*' = any
51
#port = 5432
52 53 54 55
#max_connections = 100
# note: increasing max_connections costs ~400 bytes of shared memory per 
# connection slot, plus lock space (see max_locks_per_transaction).  You
# might also need to raise shared_buffers to support more connections.
56
#superuser_reserved_connections = 2
57 58
#unix_socket_directory = ''
#unix_socket_group = ''
59 60
#unix_socket_permissions = 0777		# octal
#bonjour_name = ''			# defaults to the computer name
61

62
# - Security & Authentication -
63

64
#authentication_timeout = 60		# 1-600, in seconds
65 66 67
#ssl = off
#password_encryption = on
#db_user_namespace = off
68

B
 
Bruce Momjian 已提交
69 70 71
# Kerberos
#krb_server_keyfile = ''
#krb_srvname = 'postgres'
72 73
#krb_server_hostname = '(any)'		# if not set, matches any keytab entry
#krb_caseins_users = off
74

75 76
# - TCP Keepalives -
# see 'man 7 tcp' for details
77 78 79 80 81 82
#tcp_keepalives_idle = 0		# TCP_KEEPIDLE, in secs; 0 uses the
					# system default
#tcp_keepalives_interval = 0		# TCP_KEEPINTVL, in seconds; 0 uses the
					# system default
#tcp_keepalives_count = 0		# TCP_KEEPCNT, in seconds; 0 uses the
					# system default
83

84
#---------------------------------------------------------------------------
85
# RESOURCE USAGE (except WAL)
86 87 88
#---------------------------------------------------------------------------

# - Memory -
89

90 91
#shared_buffers = 1000			# min 16 or max_connections*2, 8KB each
#temp_buffers = 1000			# min 100, 8KB each
92
#max_prepared_transactions = 5		# can be 0 or more
93 94
# note: increasing max_prepared_transactions costs ~600 bytes of shared memory
# per transaction slot, plus lock space (see max_locks_per_transaction).
95 96 97
#work_mem = 1024			# min 64, size in KB
#maintenance_work_mem = 16384		# min 1024, size in KB
#max_stack_depth = 2048			# min 100, size in KB
98

99
# - Free Space Map -
100

101
#max_fsm_pages = 20000			# min max_fsm_relations*16, 6 bytes each
102
#max_fsm_relations = 1000		# min 100, ~70 bytes each
103

104
# - Kernel Resource Usage -
105

106
#max_files_per_process = 1000		# min 25
107
#preload_libraries = ''
108

109 110
# - Cost-Based Vacuum Delay -

111 112 113 114 115
#vacuum_cost_delay = 0			# 0-1000 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		# 0-10000 credits
116 117 118

# - Background writer -

119 120 121 122 123
#bgwriter_delay = 200			# 10-10000 milliseconds between rounds
#bgwriter_lru_percent = 1.0		# 0-100% of LRU buffers scanned/round
#bgwriter_lru_maxpages = 5		# 0-1000 buffers max written/round
#bgwriter_all_percent = 0.333		# 0-100% of all buffers scanned/round
#bgwriter_all_maxpages = 5		# 0-1000 buffers max written/round
124

125

126
#---------------------------------------------------------------------------
127
# WRITE AHEAD LOG
128 129 130
#---------------------------------------------------------------------------

# - Settings -
131

132 133 134 135 136 137 138 139 140 141 142 143
#fsync = on				# turns forced synchronization on or off
#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 = 8			# min 4, 8KB each
#commit_delay = 0			# range 0-100000, in microseconds
#commit_siblings = 5			# range 1-1000
144

145
# - Checkpoints -
146

147 148 149
#checkpoint_segments = 3		# in logfile segments, min 1, 16MB each
#checkpoint_timeout = 300		# range 30-3600, in seconds
#checkpoint_warning = 30		# in seconds, 0 is off
150

151 152
# - Archiving -

153 154
#archive_command = ''			# command to use to archive a logfile 
					# segment
155

156

157
#---------------------------------------------------------------------------
158
# QUERY TUNING
159 160
#---------------------------------------------------------------------------

161
# - Planner Method Configuration -
162

163 164 165 166 167 168 169 170 171
#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
172

173
# - Planner Cost Constants -
174

175 176 177 178 179 180
#effective_cache_size = 1000		# typically 8KB each
#random_page_cost = 4			# units are one sequential page fetch 
					# cost
#cpu_tuple_cost = 0.01			# (same)
#cpu_index_tuple_cost = 0.001		# (same)
#cpu_operator_cost = 0.0025		# (same)
181

182
# - Genetic Query Optimizer -
183

184
#geqo = on
185
#geqo_threshold = 12
186 187 188 189
#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
190

191
# - Other Planner Options -
192

193
#default_statistics_target = 10		# range 1-1000
194
#constraint_exclusion = off
195
#from_collapse_limit = 8
196 197
#join_collapse_limit = 8		# 1 disables collapsing of explicit 
					# JOINs
198 199


200
#---------------------------------------------------------------------------
201
# ERROR REPORTING AND LOGGING
202 203
#---------------------------------------------------------------------------

204
# - Where to Log -
205

206 207 208
#log_destination = 'stderr'		# Valid values are combinations of 
					# stderr, syslog and eventlog, 
					# depending on platform.
209

210
# This is used when logging to stderr:
211 212
#redirect_stderr = off			# Enable capturing of stderr into log 
					# files
213 214

# These are only used if redirect_stderr is on:
215 216
#log_directory = 'pg_log'		# Directory where log files are written
					# Can be absolute or relative to PGDATA
217
#log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' # Log file name pattern.
218
					# Can include strftime() escapes
219
#log_truncate_on_rotation = off # If on, any existing log file of the same 
220 221 222 223 224 225 226 227 228 229 230 231 232
					# 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 = 1440		# Automatic rotation of logfiles will 
					# happen after so many minutes.  0 to 
					# disable.
#log_rotation_size = 10240		# Automatic rotation of logfiles will 
					# happen after so many kilobytes of log
					# output.  0 to disable.
233 234

# These are relevant when logging to syslog:
235 236 237
#syslog_facility = 'LOCAL0'
#syslog_ident = 'postgres'

238

239
# - When to Log -
240

241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278
#client_min_messages = notice		# Values, in order of decreasing detail:
					#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
					#   log
					#   notice
					#   warning
					#   error

#log_min_messages = notice		# Values, in order of decreasing detail:
					#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
					#   info
					#   notice
					#   warning
					#   error
					#   log
					#   fatal
					#   panic

#log_error_verbosity = default		# terse, default, or verbose messages

#log_min_error_statement = panic	# Values in order of increasing severity:
				 	#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
				 	#   info
					#   notice
					#   warning
					#   error
					#   panic(off)
279
				 
280 281
#log_min_duration_statement = -1	# -1 is disabled, 0 logs all statements
					# and their durations, in milliseconds.
B
Bruce Momjian 已提交
282

283 284
#silent_mode = off			# DO NOT USE without syslog or 
					# redirect_stderr
285

286
# - What to Log -
287

288 289 290 291 292 293 294
#debug_print_parse = off
#debug_print_rewritten = off
#debug_print_plan = off
#debug_pretty_print = off
#log_connections = off
#log_disconnections = off
#log_duration = off
295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312
#log_line_prefix = ''			# Special values:
					#   %u = user name
					#   %d = database name
					#   %r = remote host and port
					#   %h = remote host
					#   %p = PID
					#   %t = timestamp (no milliseconds)
					#   %m = timestamp with milliseconds
					#   %i = command tag
					#   %c = session id
					#   %l = session line number
					#   %s = session start timestamp
					#   %x = transaction id
					#   %q = stop here in non-session 
					#        processes
					#   %% = '%'
					# e.g. '<%u%%%d> '
#log_statement = 'none'			# none, mod, ddl, all
313
#log_hostname = off
314

315 316

#---------------------------------------------------------------------------
317
# RUNTIME STATISTICS
318 319 320
#---------------------------------------------------------------------------

# - Statistics Monitoring -
321

322 323 324 325
#log_parser_stats = off
#log_planner_stats = off
#log_executor_stats = off
#log_statement_stats = off
326

327
# - Query/Index Statistics Collector -
328

329 330 331 332
#stats_start_collector = on
#stats_command_string = off
#stats_block_level = off
#stats_row_level = off
333
#stats_reset_on_server_start = off
334 335


336 337 338 339
#---------------------------------------------------------------------------
# AUTOVACUUM PARAMETERS
#---------------------------------------------------------------------------

340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355
#autovacuum = false			# enable autovacuum subprocess?
#autovacuum_naptime = 60		# time between autovacuum runs, in secs
#autovacuum_vacuum_threshold = 1000	# min # of tuple updates before
					# vacuum
#autovacuum_analyze_threshold = 500	# min # of tuple updates before 
					# analyze
#autovacuum_vacuum_scale_factor = 0.4	# fraction of rel size before 
					# vacuum
#autovacuum_analyze_scale_factor = 0.2	# fraction of rel size before 
					# analyze
#autovacuum_vacuum_cost_delay = -1	# default vacuum cost delay for 
					# autovac, -1 means use 
					# vacuum_cost_delay
#autovacuum_vacuum_cost_limit = -1	# default vacuum cost limit for 
					# autovac, -1 means use
					# vacuum_cost_limit
356 357


358
#---------------------------------------------------------------------------
359
# CLIENT CONNECTION DEFAULTS
360 361 362
#---------------------------------------------------------------------------

# - Statement Behavior -
363

364 365 366
#search_path = '$user,public'		# schema names
#default_tablespace = ''		# a tablespace name, '' uses
					# the default
367
#check_function_bodies = on
368
#default_transaction_isolation = 'read committed'
369
#default_transaction_read_only = off
370
#statement_timeout = 0			# 0 is disabled, in milliseconds
371

372
# - Locale and Formatting -
373

374
#datestyle = 'iso, mdy'
375 376
#timezone = unknown			# actually, defaults to TZ 
					# environment setting
377
#australian_timezones = off
378 379 380
#extra_float_digits = 0			# min -15, max 2
#client_encoding = sql_ascii		# actually, defaults to database
					# encoding
381

382
# These settings are initialized by initdb -- they might be changed
383 384 385 386 387
#lc_messages = 'C'			# locale for system error message 
					# strings
#lc_monetary = 'C'			# locale for monetary formatting
#lc_numeric = 'C'			# locale for number formatting
#lc_time = 'C'				# locale for time formatting
388

389
# - Other Defaults -
390

391
#explain_pretty_print = on
392 393
#dynamic_library_path = '$libdir'

394 395

#---------------------------------------------------------------------------
396
# LOCK MANAGEMENT
397
#---------------------------------------------------------------------------
398

399
#deadlock_timeout = 1000		# in milliseconds
400 401 402 403
#max_locks_per_transaction = 64		# min 10
# note: each lock table slot uses ~220 bytes of shared memory, and there are
# max_locks_per_transaction * (max_connections + max_prepared_transactions)
# lock table slots.
404 405


406
#---------------------------------------------------------------------------
407
# VERSION/PLATFORM COMPATIBILITY
408 409 410
#---------------------------------------------------------------------------

# - Previous Postgres Versions -
411

412
#add_missing_from = off
413
#regex_flavor = advanced		# advanced, extended, or basic
414 415 416
#sql_inheritance = on
#default_with_oids = off
#escape_string_warning = off
417

418
# - Other Platforms & Clients -
419

420
#transform_null_equals = off
421 422 423 424 425 426 427


#---------------------------------------------------------------------------
# CUSTOMIZED OPTIONS
#---------------------------------------------------------------------------

#custom_variable_classes = ''		# list of custom variable class names