postgresql.conf.sample 20.2 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
# (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.
12
#
13 14 15
# 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.
16
#
17 18 19 20 21
# 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.
22
#
23 24 25 26
# 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.
#
27 28
# Memory units:  kB = kilobytes MB = megabytes GB = gigabytes
# Time units:    ms = milliseconds s = seconds min = minutes h = hours d = days
29 30


31
#------------------------------------------------------------------------------
32
# FILE LOCATIONS
33
#------------------------------------------------------------------------------
34

35 36
# The default values of these variables are driven from the -D command-line
# option or PGDATA environment variable, represented here as ConfigDir.
37

38
#data_directory = 'ConfigDir'		# use data in another directory
39
					# (change requires restart)
40
#hba_file = 'ConfigDir/pg_hba.conf'	# host-based authentication file
41 42 43
					# (change requires restart)
#ident_file = 'ConfigDir/pg_ident.conf'	# ident configuration file
					# (change requires restart)
44

45 46 47
# 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)
48 49


50
#------------------------------------------------------------------------------
51
# CONNECTIONS AND AUTHENTICATION
52
#------------------------------------------------------------------------------
53 54

# - Connection Settings -
55

56
#listen_addresses = '*'			# what IP address(es) to listen on;
T
Tom Lane 已提交
57
					# comma-separated list of addresses;
58
					# defaults to '*', '*' = all
59
					# (change requires restart)
60 61 62 63 64 65 66 67 68 69 70

#port = 5432				# sets the database listener port for 
      					# a Greenplum instance. The master and 
					# each segment has its own port number. 
# note: Port numbers for the Greenplum system must also be changed in the
# gp_configuration catalog. See the Greenplum Database Administrator Guide 
# for instructions!
#
# WARNING: YOU MUST SHUT DOWN YOUR GREENPLUM SYSTEM BEFORE CHANGING 
# THE PORT NUMBER IN THIS FILE.

71
#max_connections = 200			# (change requires restart)
72 73 74
# 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.
75
#superuser_reserved_connections = 3	# (change requires restart)
76 77
#unix_socket_directory = ''		# (change requires restart)
#unix_socket_group = ''			# (change requires restart)
78
#unix_socket_permissions = 0777		# begin with 0 to use octal notation
79
					# (change requires restart)
80
#bonjour_name = ''			# defaults to the computer name
81
					# (change requires restart)
82

83
# - Security and Authentication -
84

85
#authentication_timeout = 1min		# 1s-600s
86
#ssl = off				# (change requires restart)
87 88
#ssl_ciphers = 'ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH'	# allowed SSL ciphers
					# (change requires restart)
89
#ssl_renegotiation_limit = 512MB	# amount of data between renegotiations
90 91
#password_encryption = on
#db_user_namespace = off
92

93
# Kerberos and GSSAPI
94
#krb_server_keyfile = ''		# (change requires restart)
95
#krb_srvname = 'postgres'		# (change requires restart, Kerberos only)
96
#krb_caseins_users = off		# (change requires restart)
97

98
# - TCP Keepalives -
99
# see "man 7 tcp" for details
100 101 102 103 104 105 106 107

#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

108

109
#------------------------------------------------------------------------------
110
# RESOURCE USAGE (except WAL)
111
#------------------------------------------------------------------------------
112 113

# - Memory -
114

115
#shared_buffers = 128MB			# min 128kB or max_connections*16kB
116
					# (change requires restart)
117
#temp_buffers = 8MB			# min 800kB
118
max_prepared_transactions = 250		# can be 0 or more
119
					# (change requires restart)
120
# Note:  Increasing max_prepared_transactions costs ~600 bytes of shared memory
121
# per transaction slot, plus lock space (see max_locks_per_transaction).
122 123
#work_mem = 32MB			# min 64kB
#maintenance_work_mem = 64MB		# min 1MB
124
#max_stack_depth = 2MB			# min 100kB
125

126
# - Free Space Map -
127

128
#max_fsm_pages = 204800			# min max_fsm_relations*16, 6 bytes each
129
					# (change requires restart)
130
#max_fsm_relations = 1000		# min 100, ~70 bytes each
131
					# (change requires restart)
132

133
# - Kernel Resource Usage -
134

135
#max_files_per_process = 1000		# min 25
136
					# (change requires restart)
137
#shared_preload_libraries = ''		# (change requires restart)
138

139 140
# - Cost-Based Vacuum Delay -

141
#vacuum_cost_delay = 0ms		# 0-100 milliseconds
142 143 144
#vacuum_cost_page_hit = 1		# 0-10000 credits
#vacuum_cost_page_miss = 10		# 0-10000 credits
#vacuum_cost_page_dirty = 20		# 0-10000 credits
145
#vacuum_cost_limit = 200		# 1-10000 credits
146

147
#------------------------------------------------------------------------------
148
# QUERY TUNING
149
#------------------------------------------------------------------------------
150

151
# - Planner Method Configuration -
152

153 154 155 156
#enable_bitmapscan = on
#enable_indexscan = on
#enable_seqscan = on
#enable_tidscan = on
157

158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178
#enable_hashjoin = on
#enable_mergejoin = off
#enable_nestloop = off
#gp_enable_adaptive_nestloop = on

#gp_enable_multiphase_agg = on
#gp_enable_preunique = on
#gp_enable_agg_distinct = on
#gp_enable_agg_distinct_pruning = on
#enable_groupagg = on
#enable_hashagg = on
#gp_selectivity_damping_for_scans = on
#gp_selectivity_damping_for_joins = off


#gp_enable_sequential_window_plans = off

#enable_sort = on
#gp_enable_sort_limit = on
#gp_enable_sort_distinct = on

179
# - Planner Cost Constants -
180

181
#seq_page_cost = 1.0			# measured on an arbitrary scale
182 183
#random_page_cost = 100			# same scale as above

184
#cpu_tuple_cost = 0.01			# same scale as above
185
#cpu_index_tuple_cost = 0.005		# same scale as above
186
#cpu_operator_cost = 0.0025		# same scale as above
187
#gp_motion_cost_per_row = 0.0  # (same) (if 0, 2*cpu_tuple_cost is used)
188

189
#effective_cache_size = 4MB
190

191
# - Other Planner Options -
192

193 194
#from_collapse_limit = 20
#join_collapse_limit = 20		# 1 disables collapsing of explicit
195
					# JOIN clauses
196
#gp_segments_for_planner = 0     # if 0, actual number of segments is used
197

198
#gp_enable_direct_dispatch = on
199

200 201 202
optimizer_analyze_root_partition = on # stats collection on root partitions

#------------------------------------------------------------------------------
203
# ERROR REPORTING AND LOGGING
204
#------------------------------------------------------------------------------
205

206
# - Set gp_reraise_signal to on to generate core files on SIGSEGV
207

208
#gp_reraise_signal = off
209

210
# - Where to Log -
211

212 213 214 215
#log_truncate_on_rotation = off		# 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
216
					# time-driven rotation, not on restarts
217
					# or size-driven rotation.  Default is
218 219
					# off, meaning append to existing files
					# in all cases.
220
#log_rotation_age = 1d			# Automatic rotation of logfiles will
221
					# happen after that time.  0 to disable.
222
#log_rotation_size = 10MB		# Automatic rotation of logfiles will 
223
					# happen after that much log output.
224
					# 0 to disable.
225

226
# - When to Log -
227

228
#client_min_messages = notice		# values in order of decreasing detail:
229 230 231 232 233 234 235 236 237 238
					#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
					#   log
					#   notice
					#   warning
					#   error

239
#log_min_messages = warning		# Values in order of decreasing detail:
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254
					#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
					#   info
					#   notice
					#   warning
					#   error
					#   log
					#   fatal
					#   panic

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

255
#log_min_error_statement = error	# values in order of decreasing detail:
256 257 258 259 260 261 262 263 264
				 	#   debug5
					#   debug4
					#   debug3
					#   debug2
					#   debug1
				 	#   info
					#   notice
					#   warning
					#   error
265
					#   log
266 267
					#   fatal
					#   panic (effectively off)
268

269
#log_min_duration_statement = -1	# -1 is disabled, 0 logs all statements
270
					# and their durations, > 0 logs only
271
					# statements running at least this time.
272

273
# - What to Log -
274

275 276
#debug_print_parse = off
#debug_print_rewritten = off
277 278
#debug_print_prelim_plan = off
#debug_print_slice_table = off
279 280
#debug_print_plan = off
#debug_pretty_print = off
281
#log_checkpoints = off
282 283 284 285
#log_connections = off
#log_disconnections = off
#log_duration = off
#log_hostname = off
286

287
#log_statement = 'none'			# none, mod, ddl, all
288
#log_temp_files = -1			# Log temporary files equal or larger
289
					# than the specified number of kilobytes.
290
					# -1 disables;  0 logs all temp files
291 292
#log_timezone = unknown			# actually, defaults to TZ environment
					# setting
293

294 295 296 297 298 299 300 301 302 303 304 305 306 307
#------------------------------------------------------------------------------
# PL/JAVA
#------------------------------------------------------------------------------
#pljava_classpath = ''                      # ':' separated list of installed jar files
#pljava_vmoptions = ''                      # Options sent to the JVM on startup
#pljava_statement_cache_size = 0            # Size of the prepared statement MRU cache
#pljava_release_lingering_savepoints = off  # on/off to release/abort lingering savepoints


#------------------------------------------------------------------------------
# PERFORMANCE MONITOR
#------------------------------------------------------------------------------

#gp_enable_gpperfmon=on		# Enable the performance monitor
S
Sumedh Kadoo 已提交
308
#gpperfmon_port=8888		# Port used by the performance monitor daemons
309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360

										
#------------------------------------------------------------------------------
# EMAIL ALERTS
#------------------------------------------------------------------------------

# Configure the DNS name of the SMTP server you want to use,
# the port it runs on (which will be either 25 or 587), and
# the SASL authentication information used to connect to it.

#gp_email_smtp_server = 'localhost:25'      # SMTP server hostname and port (don't forget the port!)
#gp_email_smtp_userid = ''					# Userid used to authenticate with SMTP server, if needed
#gp_email_smtp_password = ''				# Password/Passphrase used to authenticate with SMTP server, if needed

# Here you need to specify e-mail addresses.  The email_from address doesn't actually need 
# to be a valid e-mail address, but it is much better if it is, because delivery failure notifications
# go to that address.  The email_to is a list of recipients who will get the alerts.
#
# The e-mail addresses need to be in the form of userid@domain.com, not just userid.
# If email_to list is empty, it disables e-mail alerts.
#
# e-mail addresses can be just the actual e-mail address, userid@domain.com, or can be a
# human readable name with attached e-mail address in the form 'Joe Smith <userid@domain.com>".
# If using the latter format, the e-mail address must be between '<' and '>'.  The first part of
# the string can be any text, and if used for the gp_email_from address, can help differentiate the e-mails
# from different servers (for example:  'my test GPDB system <userid@domain.com>").

#gp_email_from = ''						# Who do we say the e-mails are from?  and who is the return-path?
#gp_email_to = ''						# Semicolon separated list of recipients that will get e-mail alerts.
										# empty means disable e-mail alerts.

#------------------------------------------------------------------------------
# SNMP INFORM/TRAP ALERTS
#------------------------------------------------------------------------------

# Configure the gp_snmp_monitor_address to be the system your SNMP monitor runs on, or a proxy
# that will relay the message to the SNMP monitor.  You can specify transport, DNS name, and port:
# [<transport-specifier>:]<transport-address>[:port]
#
# where <transport-specifier> can be 'udp', 'tcp', 'udpv6', 'tcpv6', or 'unix' for unix domain sockets (optional).
# For udp or tcp, the port is typically 162. 
# For a SNMP monitor running locally, you might use 'localhost:162', but more typically
# the SNMP monitor is running on some other machine.
# You can send to multiple network monitors by using a comma separated list of addresses.
#
# if gp_snmp_peername is empty, snmp alerts are disabled.

#gp_snmp_monitor_address = ''     		# name or IP address(es) (and optionally the port) of the SNMP monitor(s) that will receive the alerts.
#gp_snmp_community = 'public'			# Change to whatever community string you use in your monitor
#gp_snmp_use_inform_or_trap = 'trap'    # Set to 'inform' or 'trap', we will send SNMP v2c inform, or SNMP v2c trap.

#------------------------------------------------------------------------------
361
# RUNTIME STATISTICS
362 363 364
#------------------------------------------------------------------------------

# - ANALYZE Statistics on Database Contents -
365

366
#default_statistics_target = 100	# range 1 - 10000 (target # of
367 368 369 370
					# histogram bins)
#gp_analyze_relative_error = 0.25	# range 0.0 - 1.0 (target relative
					# error fraction)
					
371
# - Query/Index Statistics Collector -
372

373 374
#track_activities = on
#track_counts = off
375 376
#update_process_title = on

377
#stats_queue_level = off
378

379

380 381 382 383 384 385 386
# - Statistics Monitoring -

#log_parser_stats = off
#log_planner_stats = off
#log_executor_stats = off
#log_statement_stats = off

387

388 389 390
gp_autostats_mode=on_no_stats		# none, on_no_stats, on_change. see documentation for semantics.
gp_autostats_on_change_threshold=2147483647 # [0..INT_MAX]. see documentation for semantics.
log_autostats=off	# print additional autostats information
391

392
#------------------------------------------------------------------------------
393
# AUTOVACUUM PARAMETERS
394 395 396 397 398 399 400 401
#------------------------------------------------------------------------------

#autovacuum = on			# Enable autovacuum subprocess?  'on' 
					# requires track_counts to also be on.
#log_autovacuum_min_duration = -1	# -1 disables, 0 logs all actions and
					# their durations, > 0 logs only
					# actions running at least that time.
#autovacuum_max_workers = 3		# max number of autovacuum subprocesses
402
#autovacuum_naptime = 1min		# time between autovacuum runs
403
#autovacuum_vacuum_threshold = 50	# min number of row updates before
404
					# vacuum
405
#autovacuum_analyze_threshold = 50	# min number of row updates before 
406
					# analyze
407 408
#autovacuum_vacuum_scale_factor = 0.2	# fraction of table size before vacuum
#autovacuum_analyze_scale_factor = 0.1	# fraction of table size before analyze
409 410
#autovacuum_freeze_max_age = 200000000	# maximum XID age before forced vacuum
					# (change requires restart)
411 412
#autovacuum_vacuum_cost_delay = 20	# default vacuum cost delay for
					# autovacuum, -1 means use
413
					# vacuum_cost_delay
414
#autovacuum_vacuum_cost_limit = -1	# default vacuum cost limit for
415
					# autovacuum, -1 means use
416
					# vacuum_cost_limit
417

418
#------------------------------------------------------------------------------
419
# CLIENT CONNECTION DEFAULTS
420
#------------------------------------------------------------------------------
421 422

# - Statement Behavior -
423

424
#search_path = '"$user",public'		# schema names
425
#default_tablespace = ''		# a tablespace name, '' uses the default
426
#check_function_bodies = on
427
#default_transaction_isolation = 'read committed'
428
#default_transaction_read_only = off
429
#session_replication_role = 'origin'
430
#statement_timeout = 0			# 0 is disabled
431
#idle_session_gang_timeout = 18s 	# in milliseconds, 0 is disabled
432
#vacuum_freeze_min_age = 100000000
433
#bytea_output='escape'
434

435
# - Locale and Formatting -
436

437
#datestyle = 'iso, mdy'
438 439 440
#timezone = unknown			# actually, defaults to TZ environment
					# setting
#timezone_abbreviations = 'Default'     # Select the set of available time zone
441
					# abbreviations.  Currently, there are
442 443 444
					#   Default
					#   Australia
					#   India
445 446
					# You can create your own file in
					# share/timezonesets/.
447 448 449
#extra_float_digits = 0			# min -15, max 2
#client_encoding = sql_ascii		# actually, defaults to database
					# encoding
450

451 452
# These settings are initialized by initdb, but they can be changed.
#lc_messages = 'C'			# locale for system error message
453 454 455 456
					# strings
#lc_monetary = 'C'			# locale for monetary formatting
#lc_numeric = 'C'			# locale for number formatting
#lc_time = 'C'				# locale for time formatting
457

458 459 460
# default configuration for text search
#default_text_search_config = 'pg_catalog.simple'

461
# - Other Defaults -
462 463

#dynamic_library_path = '$libdir'
464
#explain_pretty_print = on
465
#local_preload_libraries = ''
466

467

468
#------------------------------------------------------------------------------
469
# LOCK MANAGEMENT
470
#------------------------------------------------------------------------------
471

472
#deadlock_timeout = 1s
473
#max_locks_per_transaction = 128		# min 10
474
					# (change requires restart)
475
# Note:  Each lock table slot uses ~270 bytes of shared memory, and there are
476 477
# max_locks_per_transaction * (max_connections + max_prepared_transactions)
# lock table slots.
478 479


480
#---------------------------------------------------------------------------
481 482 483 484 485 486 487 488 489 490
# RESOURCE SCHEDULING
#---------------------------------------------------------------------------

#max_resource_queues = 9		# no. of resource queues to create.
#max_resource_portals_per_transaction = 64	# no. of portals per backend.
#resource_select_only = on		# resource lock SELECT queries only.
#resource_cleanup_gangs_on_wait = on	# Cleanup idle reader gangs before
										# resource lockwait.
gp_resqueue_memory_policy = 'eager_free'	# memory request based queueing. 
									# eager_free, auto or none
491

492 493
#---------------------------------------------------------------------------
# EXTERNAL TABLES
494
#---------------------------------------------------------------------------
495
#gp_external_enable_exec = on   # enable external tables with EXECUTE.
496

497 498 499 500 501 502 503 504 505 506 507
#---------------------------------------------------------------------------
# APPEND ONLY TABLES
#---------------------------------------------------------------------------
#gp_safefswritesize = 0   # minimum size for safe AO writes in a non-mature fs
max_appendonly_tables = 10000 # Maximum number of append only tables that can 
							  # participate in writing data concurrently.
#------------------------------------------------------------------------------
# VERSION/PLATFORM COMPATIBILITY
#------------------------------------------------------------------------------

# - Previous PostgreSQL Versions -
508

509
#add_missing_from = off
510
#array_nulls = on
511
#backslash_quote = safe_encoding	# on, off, or safe_encoding
512
#escape_string_warning = on
513
#regex_flavor = advanced		# advanced, extended, or basic
514
#standard_conforming_strings = on
515
#synchronize_seqscans = on
516

517
# - Other Platforms and Clients -
518

519
#transform_null_equals = off
520 521 522


#---------------------------------------------------------------------------
523
# GREENPLUM ARRAY CONFIGURATION
524 525
#---------------------------------------------------------------------------

526 527 528 529 530 531 532 533 534 535 536
#---------------------------------------------------------------------------
# GREENPLUM ARRAY TUNING
#---------------------------------------------------------------------------

# - Interconnect -

#gp_max_packet_size = 8192
gp_interconnect_type=udpifc

# - Worker Process Creation -

537
gp_connections_per_thread = 0
538 539 540 541 542 543 544 545 546 547 548 549 550
gp_segment_connect_timeout = 600s

# - Resource limits -
gp_vmem_protect_limit = 8192  #Virtual memory limit (in MB).
#gp_vmem_idle_resource_timeout = 18000 # idle-time before gang-release, in milliseconds (zero disables release).

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

#custom_variable_classes = ''			# list of custom variable class names
gp_backup_directIO = off				# enable\disable dump with direct IO
gp_backup_directIO_read_chunk_mb = 20	# Size of read Chunk buffer in directIO dump (in MB)