postgresql.conf注释详解

postgresql.conf文件中,每行配置的作用如下:

# 监听地址和端口
listen_addresses = '*'         # '*'表示监听所有IP地址;默认为'localhost',使用'*'表示监听所有IP地址
port = 5432                    # PostgreSQL服务器监听的端口号,默认为5432

# 最大连接数
max_connections = 100           # 允许的最大客户端连接数

# SSL配置
#ssl = off                      # 是否启用SSL,默认为关闭
#ssl_ca_file = ''               # SSL证书颁发机构的证书文件路径
#ssl_cert_file = 'server.crt'   # 服务器SSL证书文件路径
#ssl_key_file = 'server.key'    # 服务器SSL私钥文件路径
#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'  # 允许的SSL密码
#ssl_prefer_server_ciphers = on # 服务器SSL密码优先级
#ssl_min_protocol_version = 'TLSv1.2'   # 最小SSL协议版本
#ssl_max_protocol_version = ''  # 最大SSL协议版本

# 资源使用
shared_buffers = 128MB         # 共享缓冲区大小
temp_buffers = 8MB             # 临时缓冲区大小
work_mem = 4MB                 # 每个查询的工作内存大小
maintenance_work_mem = 64MB    # 维护操作的内存大小
autovacuum_work_mem = -1       # 自动清理操作的内存大小,-1表示使用maintenance_work_mem

# WAL(Write-Ahead Logging)配置
wal_level = replica            # WAL级别,可选值为minimal, replica, logical
#fsync = on                     # 是否将数据刷新到磁盘以确保崩溃安全性,默认为开启
#synchronous_commit = on        # 同步提交级别,可选值为off, local, remote_write, remote_apply, on
#wal_sync_method = fsync        # WAL同步方法,可选值为fsync, fdatasync, open_datasync等

# 自动化清理
#autovacuum = on                # 是否启用自动化清理,默认为开启
#autovacuum_naptime = 1min      # 自动清理运行之间的时间间隔

# 备份和恢复
#archive_mode = on              # 是否启用归档,可选值为off, on, always
#archive_command = ''            # 归档日志文件的命令

# 备份恢复目标
#recovery_target = ''            # 恢复目标,可选值为immediate, name, time, xid, lsn
#recovery_target_name = ''       # 恢复目标的名称
#recovery_target_time = ''       # 恢复目标的时间戳
#recovery_target_xid = ''        # 恢复目标的事务ID
#recovery_target_lsn = ''        # 恢复目标的WAL LSN
#recovery_target_inclusive = on  # 是否包含恢复目标本身
#recovery_target_timeline = 'latest'  # 恢复目标的时间线,可选值为current, latest, 或指定的时间线ID
#recovery_target_action = 'pause'  # 恢复目标达到后的操作,可选值为pause, promote, shutdown

# 复制配置
max_wal_senders = 10           # 最大WAL发送者的数量
#max_replication_slots = 10     # 最大复制插槽的数量

# 查询优化
#enable_bitmapscan = on          # 是否启用位图扫描
#enable_hashagg = on             # 是否启用哈希聚合
#enable_hashjoin = on            # 是否启用哈希连接
#enable_indexscan = on           # 是否启用索引扫描
#enable_indexonlyscan = on       # 是否启用索引唯一扫描
#enable_material = on            # 是否启用材料化
#enable_mergejoin = on           # 是否启用合并连接
#enable_nestloop = on            # 是否启用嵌套循环连接
#enable_parallel_append = on     # 是否启用并行附加
#enable_seqscan = on             # 是否启用顺序扫描
#enable_sort = on                # 是否启用排序
#enable_incremental_sort = on    # 是否启用增量排序
#enable_tidscan = on             # 是否启用TID扫描
#enable_partitionwise_join = off # 是否启用分区连接
#enable_partitionwise_aggregate = off  # 是否启用分区聚合
#enable_parallel_hash = on       # 是否启用并行哈希
#enable_partition_pruning = on   # 是否启用分区修剪
#jit = on                        # 是否启用JIT编译

# 日志记录
#log_destination = 'stderr'      # 日志输出目标,可选值为stderr, csvlog, syslog, eventlog
logging_collector = on          # 是否启用日志收集器
#log_directory = 'log'           # 日志文件存储目录
log_filename = 'postgresql-%a.log'  # 日志文件名格式,可包含strftime()格式
#log_file_mode = 0600            # 日志文件的权限
#log_truncate_on_rotation = on   # 是否在日志轮换时截断现有日志文件
log_rotation_age = 1d           # 日志轮换的时间间隔
log_rotation_size = 10MB        # 日志轮换的文件大小
#log_min_duration_statement = -1 # 记录超过指定时间的语句执行时间,-1表示禁用
#log_statement = 'all'           # 记录执行的语句类型,可选值为none, ddl, mod, all
#log_checkpoints = on            # 是否记录检查点完成的信息
#log_connections = on            # 是否记录连接和断开连接的信息
#log_disconnections = on         # 是否记录断开连接的信息
#log_duration = off              # 是否记录语句执行时间
#log_error_verbosity = default   # 记录错误的详细级别,可选值为terse, default, verbose
#log_lock_waits = off            # 是否记录锁等待信息
#log_statement_sample_rate = 1.0 # 记录语句的采样率
#log_temp_files = -1             # 记录创建临时文件的阈值,-1表示禁用
#log_timezone = ''               # 日志时区

# 监控配置
#track_activities = on           # 是否追踪活动状态
#track_counts = on               # 是否追踪计数器
#track_io_timing = off           # 是否追踪I/O计时
#track_functions = none          # 是否追踪函数调用,可选值为none, pl, all
#track_activity_query_size = 1024  # 追踪活动状态的查询文本的最大大小

# 连接池
#max_pool_size = 20              # 连接池的最大连接数
#min_pool_size = 5               # 连接池的最小连接数
#max_worker_processes = 8        # 最大工作进程数

# 其他配置
#timezone = 'UTC'                # 数据库时区
#datestyle = 'iso, mdy'          # 日期样式
#lc_messages = 'en_US.UTF-8'     # 本地化信息
#lc_monetary = 'en_US.UTF-8'     # 本地化货币格式
#lc_numeric = 'en_US.UTF-8'      # 本地化数值格式
#lc_time = 'en_US.UTF-8'         # 本地化时间格式
#default_text_search_config = 'pg_catalog.english'  # 默认文本搜索配置

# - Shared Library Preloading -

#shared_preload_libraries = ''         # 用于共享库预加载,包含要在PostgreSQL启动时加载的共享库的名称
#local_preload_libraries = ''          # 仅限本地连接的共享库预加载
#session_preload_libraries = ''        # 仅限当前会话的共享库预加载
#jit_provider = 'llvmjit'              # JIT编译器的提供者,可选值为'llvmjit'等
#dynamic_library_path = '$libdir'      # 动态库路径

# - Other Defaults -

# 这一部分包含一些其他的默认设置

#------------------------------------------------------------------------------
# LOCK MANAGEMENT
#------------------------------------------------------------------------------

#deadlock_timeout = 1s                 # 死锁超时时间,单位为秒
#max_locks_per_transaction = 64        # 每个事务允许的最大锁数
#max_pred_locks_per_transaction = 64   # 每个事务允许的最大预测锁数
#max_pred_locks_per_relation = -2      # 每个关系允许的最大预测锁数,负值表示
                                      # (max_pred_locks_per_transaction
                                      # / -max_pred_locks_per_relation) - 1
#max_pred_locks_per_page = 2           # 每页允许的最大预测锁数

#------------------------------------------------------------------------------
# VERSION AND PLATFORM COMPATIBILITY
#------------------------------------------------------------------------------

# - Previous PostgreSQL Versions -

#array_nulls = on                      # 是否启用数组中的空值
#backslash_quote = safe_encoding       # 反斜杠的引号处理方式,可选值为on, off, 或safe_encoding
#escape_string_warning = on             # 是否警告在字符串中使用反斜杠进行转义
#lo_compat_privileges = off            # 是否启用兼容大对象(large objects)特权
#operator_precedence_warning = off     # 是否警告在使用不同优先级的操作符时
#quote_all_identifiers = off           # 是否在标识符周围使用引号
#standard_conforming_strings = on      # 是否使用标准字符串转义语法
#synchronize_seqscans = on            # 是否同步序列扫描

# - Other Platforms and Clients -

#transform_null_equals = off           # 是否将"NULL = NULL"转换为false

#------------------------------------------------------------------------------
# ERROR HANDLING
#------------------------------------------------------------------------------

#exit_on_error = off                   # 在任何错误发生时是否终止会话
#restart_after_crash = on               # 后端崩溃后是否重新初始化
#data_sync_retry = off                  # 在数据fsync失败时是否重试或触发崩溃

#------------------------------------------------------------------------------
# CONFIG FILE INCLUDES
#------------------------------------------------------------------------------

# 这一部分允许从除默认postgresql.conf之外的文件加载设置。
# 注意,这些是指令而不是变量分配,因此可以有多个有效的指令。

#include_dir = '...'                    # 包含以'.conf'结尾的文件的目录,例如,'conf.d'
#include_if_exists = '...'               # 仅在文件存在时包含文件
#include = '...'                        # 包含文件

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
PostgreSQL 10 中,`postgresql.conf` 文件用于指定 PostgreSQL 数据库服务器的全局配置选项。以下是一些常见的配置选项: 1. `listen_addresses`:指定数据库服务器要监听的 IP 地址或主机名。如果要允许来自所有 IP 地址的连接,则可以将其设置为 `*`。 ``` listen_addresses = '*' ``` 2. `port`:指定数据库服务器要监听的端口号。 ``` port = 5432 ``` 3. `max_connections`:指定数据库服务器同时处理的最大客户端连接数。 ``` max_connections = 100 ``` 4. `shared_buffers`:指定 PostgreSQL 要使用的共享内存缓冲区大小。该值应该足够大,以便在内存中缓存常用的数据。 ``` shared_buffers = 1GB ``` 5. `work_mem`:指定 PostgreSQL 中每个排序和哈希操作使用的内存缓冲区大小。该值应该足够大,以便在内存中缓存排序和哈希操作所需的数据。 ``` work_mem = 64MB ``` 6. `maintenance_work_mem`:指定 PostgreSQL 执行维护操作时使用的内存缓冲区大小。例如,当执行 VACUUM 操作时,该值应该足够大,以便在内存中缓存需要清理的数据。 ``` maintenance_work_mem = 256MB ``` 7. `effective_cache_size`:指定 PostgreSQL 估计的系统缓存大小。该值应该足够大,以便 PostgreSQL 可以利用系统缓存中的数据。 ``` effective_cache_size = 4GB ``` 8. `wal_level`:指定 WAL 日志的详细程度。可以设置为 `minimal`、`replica` 或 `logical`。 ``` wal_level = replica ``` 9. `max_wal_senders`:指定主服务器能够向从服务器发送 WAL 日志的最大数量。 ``` max_wal_senders = 10 ``` 以上是 PostgreSQL 10 中 `postgresql.conf` 文件的一些常见配置选项。这些选项可以根据具体的需求进行修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亦诗亦诗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值