Parameter list
KakaoCloud provides various parameters necessary for PostgreSQL configuration.
Some parameters support functions, expressions, and keywords. For more details, please refer to Parameter group > Expressions, functions, and keywords used in parameters.
Detailed information such as units, types, data formats, and editability of parameters can be found in the parameter group details view within the console.
Parameters with a Float data format use the %.6g format when displaying values. This format only outputs up to 6 significant digits (excluding the decimal point). If the number of digits is exceeded, it is automatically rounded for display. Therefore, the value entered in the parameter group may differ from the actual value verified in the database.
Parameters to be careful of when modifying
These parameters require caution during modification because improper settings can affect the operation of the PostgreSQL service.
Due to its internal structure, PostgreSQL limits the total number of processes to 262,143 or fewer.
If the sum of autovacuum_max_workers, max_connections, max_wal_senders, and max_worker_processes exceeds 262,143, the configured values for these parameters will not be applied.
Memory parameters
| Parameter name | Description | Notes when modifying |
|---|---|---|
autovacuum_work_mem | Memory size for Autovacuum tasks ( -1 uses maintenance_work_mem) | Default -1: Uses the maintenance_work_mem valueUnavailable values: 0 ~ 1023If a separate value is specified, total memory usage may increase up to autovacuum_work_mem x autovacuum_max_workers |
effective_cache_size | Value used by the query planner to estimate available cache memory | Does not directly allocate actual memory Set based on the overall memory size of the database server |
maintenance_work_mem | Maximum memory size for maintenance tasks (VACUUM, CREATE INDEX, etc.) | Memory is allocated separately per task If multiple tasks run simultaneously, total memory usage may increase |
shared_buffers | Shared memory size for caching table and index data | Too small: possible performance degradation Too large: possible system overload or failure |
work_mem | Memory size allocated for query operations such as sorting, hashing, and aggregation | Memory is allocated separately per operation If concurrent queries increase, total memory usage may increase |
Connection and process parameters
| Parameter name | Description | Notes when modifying |
|---|---|---|
max_connections | Maximum number of client connections allowed simultaneously | Uses system resources per connection Setting an excessively high value may increase CPU and memory usage and cause system load |
max_parallel_workers | Maximum number of parallel workers allowed on the server | Setting a large value that does not match server specifications may increase CPU and memory usage and cause system load |
max_worker_processes | Maximum number of background workers that can run for parallel processing, background tasks, extensions, and similar operations | Too low: features may fail or parallel processing may be limited Too high: service startup issues may occur due to insufficient memory |
Lock and transaction parameters
| Parameter name | Description | Notes when modifying |
|---|---|---|
max_locks_per_transaction | Maximum number of locks that can be acquired per transaction | Setting an excessively high value may cause service startup issues due to insufficient memory |
max_pred_locks_per_transaction | Maximum number of predicate locks that can be acquired per transaction | Setting an excessively high value may cause service startup issues due to insufficient memory |
max_prepared_transactions | Maximum number of prepared transactions that can be used simultaneously | Setting an excessively high value may cause service startup issues due to insufficient memory |
WAL and replication parameters
| Parameter name | Description | Notes when modifying |
|---|---|---|
wal_keep_size | Minimum size of WAL files to retain | If replication delay occurs, the Standby server may not receive required WAL files Set a sufficient value to maintain replication connections |
Parameters with recommended values or restrictions
Among the provided parameters, these have recommended settings based on operational policies or are parameters that cannot be set directly.
| Parameter name | Description | Restrictions and recommendations |
|---|---|---|
application_name | Specifies the name of the application executing the current session | If a change is needed, session-level configuration with the SET command is recommended |
client_encoding | Sets the character encoding between client and server | If a change is needed, session-level configuration with the SET command is recommendedOnly character sets supported by PostgreSQL can be used - See the official documentation for supported values |
DateStyle | Sets the date and time output format | If using a format other than the default DateStyle, per-user configuration with ALTER USER ... SET is recommended |
lc_messages | Sets the language for messages and error messages | Based on locale information provided by the operating system Values other than locales registered in the system cannot be set |
lc_monetary | Locale that determines currency formatting | Based on locale information provided by the operating system Values other than locales registered in the system cannot be set |
lc_numeric | Locale that determines number formatting | Based on locale information provided by the operating system Values other than locales registered in the system cannot be set |
lc_time | Locale that determines date and time formatting | Based on locale information provided by the operating system Values other than locales registered in the system cannot be set |
log_statement_stats | Whether to log query execution statistics | Can be set only when log_parser_stats, log_planner_stats, and log_executor_stats are all disabled (OFF) |
log_timezone | Time zone used for log timestamps | Only time zones provided for major countries and regions can be set |
tcp_keepalives_count | Maximum number of keepalive packets to send before a TCP connection is dropped | Determined by the operating system TCP Keepalive settings Cannot be modified directly |
tcp_keepalives_idle | Maximum time in seconds a TCP connection can remain inactive | Determined by the operating system TCP Keepalive settings Cannot be modified directly |
tcp_keepalives_interval | TCP keepalive packet interval in seconds | Determined by the operating system TCP Keepalive settings Cannot be modified directly |
TimeZone | Default time zone used by the server | Only time zones provided for major countries and regions can be set |
wal_buffer | WAL log buffer size | Values 0 ~ 3 cannot be set due to database constraints |