免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 9729 | 回复: 6
打印 上一主题 下一主题

初学者,先根据PostgreSQL 8.0.0 中文文档汉化postgresql.conf注释 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-04-11 14:50 |只看该作者 |倒序浏览
可能对我等初学者在pgAdmin 中看着会方便点

postgresql_cn.zip

17.24 KB, 下载次数: 786

论坛徽章:
0
2 [报告]
发表于 2006-04-11 17:06 |只看该作者
我贴出来吧,大家就不必解压了。

论坛徽章:
0
3 [报告]
发表于 2006-04-11 17:07 |只看该作者

# -----------------------------
# PostgreSQL configuration file
# -----------------------------
#
# This file consists of lines of the form:
#
#   name = value
#
# (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.
#
# Please note that re-commenting a setting is NOT sufficient to revert it
# to the default value, unless you restart the postmaster.
#
# Any option can also be given as a command line switch to the
# postmaster, e.g. 'postmaster -c log_connections=on'. Some options
# can be changed at run-time with the 'SET' SQL command.
#
# 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
# "pg_ctl reload". Some settings, such as listen_addresses, require
# a postmaster shutdown and restart to take effect.


#---------------------------------------------------------------------------
# FILE LOCATIONS
#---------------------------------------------------------------------------

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

#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

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


#---------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#---------------------------------------------------------------------------

# - Connection Settings -

listen_addresses = '*'                # 声明服务器监听客户端应用连接的 TCP/IP 地址。 数值是从一个逗号分隔的主机名和/或数字IP地址获取的。 特殊的条目 * 对应所有可用 IP 接口。 如果这个列表是空的,那么服务器不会监听任何 IP 接口,这种情况下, 只有 Unix 域套接字可以用于连接数据库。 缺省值是 localhost, 它只允许进行本地 "loopback" 连接。这个参数只能在服务器启动的时候设置。
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost', '*' = all
port = 5432                # 服务器监听的 TCP 端口;缺省是 5432。请注意同一个端口号用于服务器监听的所有 IP 地址。 这个参数只能在服务器启动的时候设置。
max_connections = 100                # 决定和数据库连接的并发连接数目的最大值。 缺省通常是 100,但是如果你的内核设置不支持这么大(在 initdb 的时候判断), 可能会比这个数少。这个参数只能在服务器启动的时候设置。
# 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.
# superuser_reserved_connections = 2                # 决定为 PostgreSQL 超级用户连接而保留的连接"槽位"。 一次最多可以同时激活 max_connections 个连接。 在活跃的并发连接到了 max_connections 减去 superuser_reserved_connections 的时候, 新的连接就只能由超级用户发起了。缺省值是 2。这个值必须小于 max_connections 的值。 这个参数只能在服务器启动的时候设置。
# unix_socket_directory = ''                # 声明服务器监听客户端应用连接来临的 Unix 域套接字的目录。 缺省通常是 /tmp,但是缺省值可以在制作的时候修改。 这个值只能在服务器启动的时候设置。
# unix_socket_group = ''                # 设置 Unix 域套接字的组所有者。(套接字的所属用户总是启动服务器的用户。) 与选项 unix_socket_permissions 一起,就可以用于控制套接字类型的附加的访问控制。 缺省的时候,这是一个空字串,表示使用当前用户的缺省组。这个选项只能在服务器启动的时候设置。
# unix_socket_permissions = 0777                # 设置 Unix 域套接字的访问权限。Unix 域套接字使用普通的 Unix 文件系统权限集。 这个选项值应该是数值的形式,也就是那种 Unix 域套接字调用 chmod 和 umask 接受的形式。(要使用客户化的八进制格式,数字必须以0 (零)开头。)缺省的权限是 0777,意思是任何人都可以连接。 合理的候选是 0770(只有用户和同组的人可以访问, 又见 unix_socket_group)和 0700 (只有用户)。
#bonjour_name = ''                        # defaults to the computer name

# - Security & Authentication -

# authentication_timeout = 60                # 1-600,完成客户端认证的最长时间,以秒计。如果一个客户端没有在这段时间里完成认证协议, 服务器将中断连接。这样就避免了出问题的客户端无限制地占据连接资源。 这个选项只能在服务器启动的时候设置或者在 postgresql.conf 里设置。 缺省是 60。
# ssl = off                # 打开 SSL 连接。请在使用这个选项之前阅读 Section 16.7。 缺省是关。这个参数只能在服务器启动的时候设置。
# password_encryption = on                # 在 CREATE USER 或者 ALTER USER 里声明一个口令, 而又没有写 ENCRYPTED 或者 UNENCRYPTED 的时候,这个选项决定口令是否要加密。 缺省是打开(加密口令)。
# db_user_namespace = off                # 这样就允许每个数据库的用户名。缺省是关闭的。注意: 这个特性只是临时试验用途,直到找到一个完全的解决方案。 那个时候,这个选项将被删除。

# Kerberos
# krb_server_keyfile = ''                # 设置 Kerberos 服务器键字文件的位置。参阅 Section 19.2.3 获取细节。
#krb_srvname = 'postgres'
#krb_server_hostname = ''                # empty string matches any keytab entry
#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 = 1000                        # 设置数据库服务器将使用的共享内存缓冲区数量。缺省通常是 1000, 如果你的内核设置不支持这么大,那么可以少些(在 initdb 的时候决定)。 每个缓冲区大小的典型值是 8192 字节,除非你在编译的时候修改了 BLCKSZ 的值。这个数值必须大于 16, 并且至少是 max_connections 数值的两倍;不过,这个数值大一些通常可以改进性能。 对于生产安装,我们通常建议是几千。 这个选项只能在服务器启动的时候设置。
#temp_buffers = 1000                        # min 100, 8KB each
#max_prepared_transactions = 5                # can be 0 or more
# note: increasing max_prepared_transactions costs ~600 bytes of shared memory
# per transaction slot, plus lock space (see max_locks_per_transaction).
#work_mem = 1024                        # 声明内部排序操作和散列表在开始使用临时磁盘文件之前使用的内存数目。 数值是以千字节为单位的,缺省是 1024 千字节(1 MB)。 请注意对于复杂的查询,可能会同时并发运行好几个排序或者散列操作; 每个都会被批准使用这个参数声明的这么多内存,然后才会开始求助于临时文件。 同样,好几个正在运行的会话可能会同时进行排序操作。因此使用的总内存可能是 work_mem 的好几倍。 在 ORDER BY,融合连接,以及 CREATE INDEX 里都要用到排序操作。 散列表在散列连接,散列为基础的聚集,以及散列为基础的 IN 子查询处理中都要用到。
#maintenance_work_mem = 16384                # 声明在维护性操作中使用的最大的内存数,比如 VACUUM, CREATE INDEX,和 ALTER TABLE ADD FOREIGN KEY 等。 数值是用千字节计的,缺省是 16384 千字节(16 MB)。因为在一个数据库会话里,任意时刻只有一个这样的操作可以执行, 并且一个数据库安装通常不会有太多这样的工作并发执行,把这个数值设置得比 work_mem 更大是安全的。 更大的设置可以改进清理和恢复数据库转储的速度。
#max_stack_depth = 2048                        # 声明服务器的执行堆栈的最大安全深度。为此设置一个参数的原因是内核强制的实际堆栈尺寸(就是 ulimit -s 或者局部等效物的设置),小于一个安全的一兆字节左右的范围。 需要这么一个安全的界限是因为在服务器里,并非所有过程都检查了堆栈深度, 儿只是在可能递规的过程,比如表达式计算这样的过程里面进行检查。 把这个参数设置得大于实际的内核限制讲意味着一个正在跑的递归函数可能会导致一个独立服务器进程的崩溃。 缺省设置是 2048 KB (两兆),这个值相对比较小,不容易导致崩溃。 但是,这个值可能太小了,以至于无法执行复杂的函数。

# - Free Space Map -

#max_fsm_pages = 20000                        #设置在共享的自由空间映射表里自由空间会跟踪的最大数目的磁盘页面数。 每个页面槽位需要消耗六个字节的共享内存。这个设置必须大于 16 * max_fsm_relations。 缺省是 20000。这个选项只能在服务器启动的时候设置。
#max_fsm_relations = 1000                # 设置自由空间将在共享地自由空间映射里跟踪的最大数目的关系(表和索引)。 每个槽位大概要使用五十字节左右。缺省是 1000。这个选项只能在服务器启动的时候设置。

# - 内核资源使用 -

#max_files_per_process = 1000                # 设置每个服务器进程允许同时打开的最大的文件数目。缺省是 1000。 如果内核强制一个合理的每进程限制, 那么你不用操心这个设置。但是在一些平台上(特别指出的是,大多数 BSD 系统), sysconf 返回一个系统真正可以支持的数目大的多的数值。 如果你发现有 "Too many open files" 这样的失败现象,那么就尝试缩小这个设置。 这个选项只能在服务器启动时设置。
#preload_libraries = ''         # 这个变量声明一个或者多个在服务器启动的时候预先装载的共享库。 可以选择在装载每个库的时候调用一个无参数的初始化函数。 要声明这个函数,可以在库名字后面加一个冒号,然后增加一个初始化函数名字。 比如 '$libdir/mylib:mylib_init' 会预先装载 mylib 并且执行 mylib_init。 如果装载了多过一个库,用逗号分隔它们。

# - 基于开销的清理延迟 -

#vacuum_cost_delay = 0                        # 0-1000 milliseconds 以毫秒计的时间长度,如果超过了开销限制,那么进程将睡眠一会儿。 缺省值是 0,它关闭基于开销的清理延迟特性。正数值打开基于开销的清理。 不过,要注意在许多系统上,sleep 延迟的有效分辨率是 10 毫秒; 把 vacuum_cost_delay 设置为一个不是 10 的整数倍的数值与将它设置为下一个 10 的整数倍作用相同。
#vacuum_cost_page_hit = 1                # 0-10000 credits 清理一个在共享缓存里找到的缓冲区的开销。它代表锁住缓冲池,查找共享的散列表以及扫描页面的内容的开销。 缺省值是 1。
#vacuum_cost_page_miss = 10                # 0-10000 credits 清理一个要从磁盘上读取的缓冲区的估计开销。 这个行为代表锁住缓冲池,查找共享散列表,从磁盘读取需要的数据块以及扫描它的内容的开销。 缺省值是 10。
#vacuum_cost_page_dirty = 20                # 0-10000 credits 如果清理修改一个原先是干净的块的预计开销。它需要一个把脏的磁盘块再次冲刷到磁盘上的额外开销。 缺省值是 20。
#vacuum_cost_limit = 200                # 0-10000 credits 导致清理进程休眠的积累开销。缺省是 200。

# - 后端写进程 -

#bgwriter_delay = 200                        # 10-10000 声明后端写进程活跃回合之间的延迟。在每个回合里,写进程都会为一些脏的缓冲区发出写操作 (可以用下面的参数控制)。选取的缓冲区总是那些在当前的脏缓冲区里当前最少使用的。 然后它就休眠 bgwriter_delay 毫秒,然后重复动作。缺省值是 200。 请注意在许多系统上,休眠延时的有效分辨率是 10 毫秒;因此,设置 bgwriter_delay 为一个不是 10 的倍数的数值与把它设置为下一个 10 的倍数是一样的效果。 这个选项只能在服务器启动的时候或者 postgresql.conf 文件里设置。
#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


#---------------------------------------------------------------------------
# 预写式日志
#---------------------------------------------------------------------------

# - Settings -

#fsync = on                                # 如果这个选项是打开,那么 PostgreSQL 服务器将在好几个地方使用 fsync() 系统调用来确保更新已经物理上写到磁盘中。 这样就保证了数据库集群将在操作系统或者硬件崩溃的情况下恢复到一个一致的状态。这个选项只能在服务器启动或者 postgresql.conf 文件里设置。
#wal_sync_method = fsync                # 用来向磁盘强制更新 WAL 数据的方法。可能的值是 fsync(每次提交的时候调用 fsync()), fdatasync(每次提交的时候调用 fdatasync()), open_sync(带着 open() 选项 O_SYNC 写 WAL 文件),以及 open_datasync(带着 open() 选项 O_DSYNC 写 WAL 文件)。 不是在所有系统上都能使用上面四种选项。如果 fsync 关闭,那么这个设置无关。 这个选项只能在服务器启动的时候和在postgresql.conf文件里设置。
                                        # 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放在共享内存里用于 WAL 数据的磁盘页面缓冲区的数目。 这个设置只需要大到能保存下一次事务生成的 WAL 数据即可。 这个选项只能在服务器启动的时候设置。
#commit_delay = 0                        # range 0-100000, 向 WAL 缓冲区写入记录和将缓冲区刷新到磁盘上之间的时间延迟,以微秒计。 一个非零的延迟允许多个事务共用一个 fsync() 系统调用提交, 如果系统负载足够搞,那么在给出的间隔里,其它的事务可能已经准备好提交了。 但是如果没有其它事务准备提交,那么这个间隔就是在浪费时间。 因此,这个延迟只是在一个服务器进程写其提交日志时,至少 commit_siblings 个其它事务在活跃的情况下执行。 缺省是零(无延迟)。
#commit_siblings = 5                        # range 1-1000在执行 commit_delay 延迟的时候,要求的最少的打开的并发事务数目。 大一些的数值会导致在延迟期间另外一个事务准备好提交的可能性增大。缺省是五。

# - 检查点 -

#checkpoint_segments = 3                # 在自动的 WAL 检查点之间的最大距离,以日志文件段(每个段通常 16 兆大)计。 缺省是三。这个选项只能在服务器启动或者在 postgresql.conf 文件里设置。
#checkpoint_timeout = 300                # range 30-3600, 在自动 WAL 检查点之间的最长时间,以秒计。缺省是 300 秒。 这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。
#checkpoint_warning = 30                # in seconds, 0 is off如果因为填充检查点段文件发生的检查点的间隔比这个数值表示的秒数更多, 那么向服务器日志发送一个消息。缺省是 30 秒。零则关闭警告。

# - 归档 -

#archive_command = ''                        # 用来将一个完整的 WAL 文件序列归档执行的 shell 命令。 如果这是一个空字串(缺省),那么 WAL 归档就关闭。字串中任何 %p 都被要归档的文件的绝对路径代替, 而任何 %f 都只被该文件名代替。如果你需要在命令里嵌入真正的 %,写 %%。 有关更多的信息,参阅 Section 22.3.1。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # segment


#---------------------------------------------------------------------------
# 查询规划
#---------------------------------------------------------------------------

# - 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    #打开或者关闭查询规划器对 TID 扫描规划类型的使用。 缺省是打开。

# - 规划器开销常量 -

#effective_cache_size = 1000                # 为规划器设置在一次索引扫描中可用的磁盘缓冲区的有效大小。 这个参数在计算一个索引的开销的预计值的时候会加以考虑; 一个更高的数值会导致很可能使用索引扫描,数值低了会更有可能选择顺序扫描。 在设置这个参数的时候,你还应该考虑 PostgreSQL 的数据文件会使用的的共享缓冲区和内核的磁盘缓冲。 还有,还要考虑预计会有的使用不同索引的并发查询数目, 因为它们必须共享可用的内存空间。这个参数对 PostgreSQL 分配的共享内存大小没有影响, 它也不会使用内核磁盘缓冲;它只用于估算。数值是用磁盘页来计算的, 通常每个页面是 8192 字节。缺省是 1000。
#random_page_cost = 4                        # 设置规划器计算的一次非顺序磁盘页面抓取的开销。 这是以顺序磁盘页面抓取的开销的倍数计量的。 更高的数值令优化器更倾向于选择一次顺序扫描,低数值的时候则倾向于使用索引扫描。 缺省是四。
                                        # cost
#cpu_tuple_cost = 0.01                        # 设置规划器预计在一次查询中处理一个数据行的开销。 这是以一次顺序页面抓取的开销的分数来计量的。 缺省是 0.01。
#cpu_index_tuple_cost = 0.001                # 设置在一次索引扫描中规划器计算出来的处理每条索引行的开销。 这是以一次顺序页面抓取的开销的分数来计量的。缺省是 0.001。
#cpu_operator_cost = 0.0025                # 设置规划器计算出来的处理一条WHERE子句中的每个操作符的开销。 这是以一次顺序页面抓取的开销的分数来计量的。缺省是 0.0025。

# - 基因查询优化器 -

#geqo = on                  #允许或禁止基因查询优化,这是一种试图不通过穷举搜索来实现查询规划的算法。缺省是允许。 geqo_threshold 变量提供了一种为特定类别的查询关闭 GEQO 的粒度更好的方法。
#geqo_threshold = 12        #只有当涉及的FROM关系数量至少有这么多个的时候,才使用基因查询优化。 (请注意一个外JOIN构造只算做一个FROM项。) 缺省是 12,对于数量小于此数的查询,也许使用判定性的穷举搜索更有效。 但是对于有许多表的查询,规划器做判断要花很多时间。
#geqo_effort = 5                        #控制 GEQO 里规划时间和查询规划的有效性之间的平衡。 这个变量必须事一个范围从 1 到 10 的整数。缺省值是 5。 大的数值增加花在进行查询规划上面的时间,但是也很可能会提高选中更有效的查询规划的几率。
#geqo_pool_size = 0                        #控制 GEQ0 使用的池大小。池大小是一个全体中的个体的数量。 它必须至少是二,并且有用的数值通常在 100 和 1000 之间。 如果把它设置为零(缺省设置),那么就会基于 geqo_effort 和查询中表的数量选取一个合适的缺省。
#geqo_generations = 0                        #控制 GEQO 使用的子代的数目。子代声明算法的迭代的数目。 它必须至少是一,有用的值范围和池的大小相同。如果设置为零(缺省),那么将基于 geqo_pool_size 选取合适的缺省。
#geqo_selection_bias = 2.0                #控制 GEQO 使用的选择性偏好。选择性偏好是在一个种群中的选择性压力。 数值可以是 1.5 到 2.0 之间;后者是缺省。

# - 其它规划器选项 -

#default_statistics_target = 10                #为没有用 ALTER TABLE SET STATISTICS 设置字段相关目标的表中其它字段设置缺省统计目标。 更大的数值增加了 ANALYZE 所需要的时间,但是可能会改善规划器的估计质量。缺省值是 10。 有关 PostgreSQL 的查询规划器使用的统计的更多信息,请参考 Section 13.2。
#constraint_exclusion = off
#from_collapse_limit = 8        #如果生成的 FROM 列表不超过这个限制的项数,规划器将把子查询融合到上层查询。 小的数值降低规划的时间,但是可能会生成差些的查询计划。 缺省是 8。通常,把它限制在小于 geqo_threshold 的数值是比较明智的。
#join_collapse_limit = 8                #如果得出的列表不超过这个数目的项,那么规划器将把明确的内 JOIN 构造抹平到 FROM 列表项中。 PostgreSQL 7.4 以前,通过 JOIN 构造声明的连接绝对不会被查询规划期重排。 现在的查询规划器已经改进过了,这样,用这种形式写出来的内层连接就可以重排了; 这个配置参数控制这种重排的程度。注意: 目前,用 JOIN 构造声明的外联接的顺序从来不会查询规划器被调整; 因此,join_collapse_limit 在这个行为上没有效果。 在未来的 PostgreSQL 版本里,规划器可能会改进某些外联接类型的重排。

                                        # JOINs

论坛徽章:
0
4 [报告]
发表于 2006-04-11 17:08 |只看该作者

#---------------------------------------------------------------------------
# 错误报告和日志
#---------------------------------------------------------------------------

# - 在哪里记录日志 -

log_destination = 'stderr'                #PostgreSQL 支持多种记录服务器日志的方法, 包括 stderr 和 syslog。 在 Windows 里,还支持 eventlog。 允许把 syslog 作为日志系统。 把这个选项设置为一个逗号分隔的日志目标的列表。缺省是只记录到 stderr。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # stderr, syslog and eventlog,
                                        # depending on platform.

# This is used when logging to stderr:
redirect_stderr = on                        #这个选项允许把那些发送到 stderr 的消息捕获下来, 然后把它们重定向到日志文件里。这个选项,加上日志记录到 stderr 里的组合, 通常比记录到 syslog 更有用, 因为有些消息类型不出现在 syslog 输出(一个常见的例子是动态连接失败消息)。 这个选项只能在服务器启动的时候设置。
                                        # files

# These are only used if redirect_stderr is on:
#log_directory = 'pg_log'                #在打开了 redirect_stderr 的时候, 这个选项判断日志文件在哪个目录里创建。 它可以声明成绝对路径,或者是与集群的数据目录相对的路径。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # Can be absolute or relative to PGDATA
#log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' #在打开了 redirect_stderr 的时候,这个选项设置所创建的日志文件的文件名。 这个数值是当作 strftime 模式看待的。 因此 % 逃逸可以声明因时间而变的文件名。 如果没有出现 % 逃逸,PostgreSQL 将附着日志文件打开的纪元时间。 比如,如果 log_filename 是 server_log, 那么选择的文件名将是 server_log.1093827753 — 假如日志文件开始于 Sun Aug 29 19:02:33 2004 MST 的话。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # Can include strftime() escapes
#log_truncate_on_rotation = off #如果打开了 redirect_stderr,这个选项将导致 PostgreSQL 阶段(覆盖),而不是附加到任何同名的现有日志文件上。 不过,截断只是发生在因为以时间为基础的旋转的时候创建的新文件上, 而不是在服务器启动的时候或者以尺寸为基础的旋转上。 比如,使用这个选项和类似 postgresql-%H.log 这样的 log_filename 将导致生成 24 个按小时生成的日志文件然后在这些文件上循环。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # 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                #在打开了 redirect_stderr 的时候, 这个选项设置一个独立的日志文件的最大生存期。 在数值指定的分钟过去之后,将创建一个新的日志文件。 设置为零可以关闭以时间为基础的新日志文件的创建。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # happen after so many minutes.  0 to
                                        # disable.
#log_rotation_size = 10240                #在打开了 redirect_stderr 的时候, 这个选项设置一个独立的日志文件的最大尺寸。 在数值指定的千字节写入日志文件之后,将会创建一个新的日志文件。 设置为零可以关闭以尺寸为基础的新日志文件的创建。 这个选项只能在服务器启动的时候在 postgresql.conf 文件里面设置。
                                        # happen after so many kilobytes of log
                                        # output.  0 to disable.

# These are relevant when logging to syslog:
#syslog_facility = 'LOCAL0' #如果把日志记录到 syslog 功能打开, 那么这个选项在打开syslog后判断要使用的 syslog "设施"。 你可以从 LOCAL0,LOCAL1,LOCAL2,LOCAL3,LOCAL4, LOCAL5,LOCAL6,LOCAL7 中选择;缺省是LOCAL0。 又见你的系统的 syslog 守护进程文档。这个选项只能在服务器启动的时候设置。
#syslog_ident = 'postgres'  #如果打开了向syslog中记日志的功能, 这个选项决定用于在 syslog 日志中标识 PostgreSQL 的程序名。缺省是 postgres。 这个选项只能在服务器启动的时候设置。


# - 什么时候记日志 -
#这里是这个设置里用到各种信息严重程度类型的一个列表:
#DEBUG[1-5] 这个提供开发人员使用的信息。
#INFO       这个提供用户隐含要求的信息,比如在 VACUUM VERBOSE 过程中的信息。
#NOTICE     这个提供可能对用户有帮助的信息,比如,长标识符的截断, 作为主键一部分创建的索引。
#WARNING    这个提供给用户的警告,比如在事务块范围之外的 COMMIT。
#ERROR      报告导致当前命令退出的错误。
#LOG        这个报告一些管理员感兴趣的信息,比如,检查点活跃性。
#FATAL      这个报告为什么当前会话终止。
#PANIC      报告导致所有会话退出的原因。

#client_min_messages = notice                # 这个选项控制那些信息发送到客户端。 有效的数值是 DEBUG5,DEBUG4, DEBUG3,DEBUG2, DEBUG1,LOG,NOTICE, WARNING 和 ERROR。 每个级别包含所有它后面的级别,级别越靠后,发送的信息越少。 缺省是 NOTICE。这里的 LOG 和 log_min_messages 里面的有不同的级别。
                                        #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                        #   log
                                        #   notice
                                        #   warning
                                        #   error

#log_min_messages = notice                #控制写到服务器日志里的信息的详细程度。有效值是 DEBUG5, DEBUG4,DEBUG3,DEBUG2, DEBUG1,INFO,NOTICE, WARNING,ERROR,LOG, FATAL,和 PANIC。 每个级别都包含它后面的级别。越靠后的数值发往服务器日志的信息越少。 缺省是 NOTICE。请注意 LOG 和 client_min_messages 里面的同名级别优先级不同。 只有超级用户可以修改这个设置。
                                        #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                        #   info
                                        #   notice
                                        #   warning
                                        #   error
                                        #   log
                                        #   fatal
                                        #   panic

#log_error_verbosity = default                # 控制记录的每条信息写到服务器日志里的详细程度。 有效的值是 TERSE,DEFAULT,和 VERBOSE, 每个都会向显示的信息里增加更多的字段。只有超级用户可以改变这个设置。

#log_min_error_statement = panic        #控制是否在服务器日志里输出那些导致错误条件的 SQL 语句。 所有导致一个特定级别(或者更高级别)的错误的 SQL 语句都要被记录日志。 缺省是 PANIC(实际上是把这个特性关闭了)。 有效的值有 DEBUG5, DEBUG4,DEBUG3, DEBUG2,DEBUG1, INFO,NOTICE, WARNING,ERROR, FATAL,和 PANIC。 比如,如果你把这个设置为 ERROR, 那么所有导致错误,致命错误,或者恐慌的 SQL 语句都将被记录日志。 打开这个选项可以帮助跟踪那些在服务器日志里出现的任何错误的源头。 只有超级用户可以改变这个设置。
                                         #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                         #   info
                                        #   notice
                                        #   warning
                                        #   error
                                        #   panic(off)
                                 
#log_min_duration_statement = -1        #设置要记录日志的语句的最小执行时间(以毫秒计)。 所有运行时间等于或者大于这个值的 SQL 语句都会在和他们的执行时间一起记录在日志里。 把这个设置为零将打印所有的查询和他们的持续时间。 设置为负一(缺省值)关闭这个功能。比如,如果你把它设置为 250, 那么所有运行时间等于或者超过 250ms 的 SQL 语句都会被记录日志。 打开这个选项可以很方便地跟踪你的应用里那些没有优化地查询。 只有超级用户可以修改这个设置。
                                        # and their durations, in milliseconds.

#silent_mode = off                        #安静的运行服务器。如果设置了这个选项,服务器将自动在后台运行并且与控制终端脱开 (和 postmaster 的 -S 选项效果一样)。 服务器的标准输出和标准错误重定向到 /dev/null,因此,发送的任何信息都将丢失。 除非打开了 syslog 日志或者打开了 redirect_stderr, 否则我们不建议使用这个选项,因为它让我们很难看到错误信息。
                                        # redirect_stderr

# - 记录什么 -

#debug_print_parse = off
#debug_print_rewritten = off
#debug_print_plan = off
#debug_pretty_print = off
    #这个选项打开出的各种调试输出。 对于执行的每个查询,它们打印生成的它生成的分析树,查询重写,或者执行规划。 debug_pretty_print 把这些输出进行缩进,会生成漂亮些但是长一些的输出格式。 client_min_messages 或者 log_min_messages 必须是 DEBUG1 或者更低才实际上把输出发往客户端或者服务器日志。这些选项缺省都是关闭的。
#log_connections = off      #这样会在每次成功的联接的时候都向服务器日志里打印一行详细信息。 缺省时是关闭的,尽管它可能很有用。这个选项只能在服务器启动的时候设置, 或者在 postgresql.conf 配置文件里设置。
#log_disconnections = off   #这个选项在会话结束的时候在服务器日志里输出一行,类似 log_connections。 缺省是关闭的。这个选项只能在服务器开始时设置或者在 postgresql.conf 配置文件里设置。
#log_duration = off         #导致每个满足 log_statement 之条件已完成语句的持续时间都写入日志。要使用这个选项, 而你又不使用 syslog,那么我们建议你用 log_line_prefix 记录 PID 或者会话 ID, 这样你就可以用进程 ID 或者会话 ID 把语句和持续时间连接起来。 缺省是关闭。如果管理员打开过它,那么只有超级用户可以修改这个设置。


log_line_prefix = '%t '                        #这是一个 printf 风格的字串,在日志的每行开头输出。 缺省时一个空字串。每个可识别的逃逸都会按照下面说明的那样逃逸 - 任何其它看起来像逃逸的都会被忽略。 其它字符都直接拷贝到日志行中。有些逃逸只被会话进程识别,不能应用于后端进程,比如 postmaster。 Syslog 生成自己的时间戳和进程 ID 信息,因此,如果你使用了 syslog, 可能不会想使用那些逃逸。这个选项只能在服务器启动或者 postgresql.conf 配置文件里设置。
                                        #   %u = 用户名
                                        #   %d = 数据库名
                                        #   %r = 远程主机名或者 IP 地址,以及远端端口
                                        #   %h = 远程主机名
                                        #   %p = 进程 ID
                                        #   %t = 时间戳 (no milliseconds)
                                        #   %m = 时间戳 with milliseconds
                                        #   %i = 命令标签。这是生成日志行的命令。
                                        #   %c = 会话 ID。一个每个会话的唯一标识符。 它是两个 4 字节的十六进制数字(没有前导零),用句点分开。 数字是会话开始时间和进程 ID,因此也可以用做一种打印这些项目的节约空间的方法。
                                        #   %l = 每个进程的日志行的编号,从 1 开始。
                                        #   %s = 会话开始的时间戳
                                        #   %x = 事务 ID
                                        #   %q = 不生成任何输出,但是告诉非会话进程在字串的这个位置停止。 被会话进程忽略。
                                        #        processes
                                        #   %% = 文本 %
                                        # e.g. '<%u%%%d> '
#log_statement = 'none'                        #控制记录哪个 SQL 语句。有效的值是 none,ddl, mod,和 all。ddl 记录所有数据定义命令, 比如 CREATE,ALTER,和 DROP 命令。 mod 记录所有 ddl 语句, 加上 INSERT,UPDATE,DELETE,TRUNCATE,和 COPY FROM。如果所包含的命令类型对路,那么PREPARE 和 EXPLAIN ANALYZE 语句也同样被记录。缺省是 none。只有超级用户可以修改这个设置。
#log_hostname = off         #缺省时,联接日志只记录所联接主机的 IP 地址。 打开这个选项导致同时记录主机名。 请注意,这样有可能带来一些不可忽略的性能损失, — 取决于你的名字解析的设置。这个选项只能在服务器启动的时候或者在 postgresql.conf 里设置。


#---------------------------------------------------------------------------
# 运行时统计
#---------------------------------------------------------------------------

# - 统计监控 -

#log_parser_stats = off
#log_planner_stats = off
#log_executor_stats = off
#log_statement_stats = off
    #对每条查询,向服务器日志里输出相应模块的性能统计。 log_statement_stats 报告总的语言统计,而其它的报告模块的统计。 这是原始的剖析工具。log_statement_stats 不能和其它任何按模块统计的选项一起打开。 缺省时所有这些选项都是关闭的。只有超级用户才能修改这些设置。
# - 查询和索引统计收集器 -

stats_start_collector = on  #控制服务器是否启动统计收集子进程。缺省时是打开, 但如果你对统计收集不感兴趣,那么可以关闭。这个选项只能在启动服务器时设置。
#stats_command_string = off #打开每个会话当前执行的命令的统计收集,以及该命令开始执行的时间。 这个选项缺省是关闭的。请注意即使把它打开,这个信息也不是所有用户都可见的, 只有超级用户和会话的所有者才能看到;因此它不应该是个安全漏洞。 这些数据可以通过系统视图 pg_stat_activity 访问, 请参考 Chapter 23 获取更多信息。
#stats_block_level = off    #打开数据库活跃性的块级别的统计收集。这个选项缺省时是关闭的。 如果打开这个选项,生成的数据可以通过 pg_stat 和 pg_statio 族函系统视图访问; 请参考 Chapter 23 获取更多信息。
stats_row_level = on        #打开数据库活跃性的块级别和行级别的统计。 这个选项缺省是关闭的。生成的数据可以通过 pg_stat 和 pg_statio 族系统视图来访问。 请参考 Chapter 23 获取更多信息。
#stats_reset_on_server_start = off  #如果打开,那么在服务器启动的时候收集的信息被清零。 如果关闭,那么统计在服务器重起过程中累加。缺省是打开。 这个选项只能在服务器启动的时候设置。


#---------------------------------------------------------------------------
# AUTOVACUUM PARAMETERS
#---------------------------------------------------------------------------

autovacuum = on                        # 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


#---------------------------------------------------------------------------
# 客户端连接缺省
#---------------------------------------------------------------------------

# - 语句行为 -

#search_path = '$user,public'                #这个变量声明模式的搜索顺序,在一个被引用对象(表,数据类型,函数等)只是一个简单名字, 没有附加模式部分时需要这样的搜索。 如果在另外一个模式里有一个相同的对象名,那么使用在这个搜索路径中找到的第一个。 一个没有在搜索路径中任何一个模式里出现的对象只能通过其所在模式的全称(打点的)名字来声明。
# default_tablespace = ''                # 这个变量声明当 CREATE 命令没有明确声明表空间时, 所创建之对象(表和索引等)的缺省表空间。数值要么是一个表空间的名字,要么是一个空串,表明使用当前数据库的缺省表空间。 如果这个数值和任意现存表空间的名字不匹配,那么 PostgreSQL 将自动使用当前数据库的缺省表空间。
                                        # the default
# check_function_bodies = on                # 这个参数通常是真。如果设置为假,那么就关闭在 CREATE FUNCTION 时候的函数体字串的合法性检查。 关闭合法性检查有时候会有用,比如可以避免在从转储中恢复函数定义的时候类似前向引用的问题。
# default_transaction_isolation = 'read committed'                # 每个 SQL 事务都有一个隔离级别,可以是"读未提交", "读已提交","可重复读"或者是"可串性化"。 这个参数控制每个新的事务的隔离级别。缺省是读已提交。
#default_transaction_read_only = off
#statement_timeout = 0                        # 退出任何使用了超过此参数指定时间(毫秒)的语句。 零值(缺省)关闭这个计时器。

# - 区域和格式化 -

#datestyle = 'iso, mdy' #设置日期和时间值的显示格式,以及有歧义的输入值的解析规则。 由于历史原因,这个变量包含两个独立的部分:输出格式声明(ISO, Postgres,SQL,或者 German)以及日志字段顺序声明(DMY, MDY,或者 YMD)。 这两个可以独立设置或者一起设置。关键字 Euro 和 European 是 DMY 的同义词; 关键字 US,NonEuro,和 NonEuropean 是 MDY 的同义词。 参阅 Section 8.5 获取更多信息。缺省是 ISO, US。
#timezone = unknown                        # 设置用于显示和解析时间戳的时区。缺省是 'unknown',意味着使用系统环境声明的时区。 参阅 Section 8.5 获取更多信息。
                                        # environment setting
#australian_timezones = off #如果设置为真,那么ACST,CST,CST, EST,和 SAT 都解释成澳大利亚时区,而不是南/北美时区和周六。 缺省是假。
#extra_float_digits = 0                        # min -15, max 2这个参数为浮点数值调整显示的数据位数,浮点类型包括 float4, float8,和几何数据类型。 参数值加在标准的数据位数上(FLT_DIG 或者 DBL_DIG 中合适的)。 数值可以设置为最高 2,以包括部分关键的数据位;这个功能对转储那些需要精确恢复的浮点数据特别有用。 或者你也可以把它设置位负数以消除不需要的数据位。
#client_encoding = sql_ascii                #设置客户端编码(字符集)。缺省使用数据库编码。
                                        # encoding

# These settings are initialized by initdb -- they might be changed
lc_messages = 'Chinese_People''s Republic of China'                        # 设置信息显示的语言。可接受的值是系统相关的;参阅 Section 20.1 获取更多信息。 如果这个变量设置为空字串(缺省值),那么其值以一种系统相关的方式从服务器的执行环境中继承过来。
                                        # strings
lc_monetary = 'Chinese_People''s Republic of China'                        # 为格式化金额数量设置区域。
lc_numeric = 'Chinese_People''s Republic of China'                        # 设置用于格式化数字的区域,比如那些用于 to_char 族函数的。可接受的值是系统相关的;参阅 Section 20.1 获取更多信息。如果这个变量设置为空字串(缺省值),那么其值以一种系统相关的方法从服务器的执行环境中继承过来。
lc_time = 'Chinese_People''s Republic of China'                                # 设置用于格式化日期和时间值的区域。(目前,这个设置什么事也没干,但将来可能会有用。)

# - 其它缺省 -

#explain_pretty_print = on  #决定 EXPLAIN VERBOSE 是使用缩进格式还是使用非缩进格式显示详细的查询树转储。 缺省是打开。
#dynamic_library_path = '$libdir' #如果需要打开一个可以动态装载的模块并且在 CREATE FUNCTION 或者 LOAD 命令里面声明的名字没有目录部分(也就是说名字里不包含斜杠), 那么系统将搜索这个目录以查找声明的文件。


#---------------------------------------------------------------------------
# 锁管理
#---------------------------------------------------------------------------

#deadlock_timeout = 1000                # 这个是以毫秒计的时间,用于设置在检查是否存在死锁条件之前的等待时间。 检查是否存在死锁条件是一个缓慢的过程,因此服务器不会在每次等待锁的时候都运行这个过程。 我们(乐观地?)假设在生产应用中的死锁是不常出现的, 因此我们在开始询问是否可以解锁之前只等待一个锁相对短的一段时间。 增加这个值就减少了浪费在无用的死锁检查上的时间,但是减慢了报告真正死锁错误的速度。 缺省是 1000(也就是 1 秒),可能是你能够耐心等待的最短时间。 在一个重载的服务器上,你可能需要增大它。这个值的典型设置应该超过你的事务的时间, 这样就可以减少在锁释放之前就开始死锁检查的问题。
#max_locks_per_transaction = 64                # 共享的锁表的大小是以假设任意时刻最多只有 max_locks_per_transaction * max_connections 个独立的对象需要被锁住为基础进行计算的。 (所以,这个参数的名字可能有些让人糊涂:这不是单个事务可以使用的锁数目的硬限制,而是一个平均值。) 缺省值 64, 已经经历史证明是足够的了,不过如果你的客户可能在一个事务里面修改很多不同的表, 那么你就可能需要提高这个数值。这个选项只能在服务器启动的时候设置。
# 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.


#---------------------------------------------------------------------------
# 版本和平台兼容性
#---------------------------------------------------------------------------

# - 以前的 PostgreSQL 版本 -

#add_missing_from = off         #如果为 true,查询引用的表将自动增加到 FROM 里 -如果还没有出现这个子句的话。 缺省是 true,为的是和以前的 PostgreSQL 版本兼容。 不过,这个行为不是 SQL 的标准,并且很多人不喜欢她,因为它会隐藏错误(比如该引用别名的时候引用了表名)。 设置为 false 则遵循 SQL 标准行为:拒绝引用不在 FROM 里列出的表。
#regex_flavor = advanced                # 正则表达式"风味"可以设置为 advanced,extended, 或者 basic。通常的缺省是 advanced。extended 设置对于和 7.4 以前的 PostgreSQL 精确的向下兼容很有用。 参阅 Section 9.7.3.1 获取细节。
#sql_inheritance = on       #这个选项控制继承语义,尤其是在缺省时是否在各种命令里把子表包括进来。 版本 7.1 以前是不包括的。如果你需要老特性,你可以把这个变量设为假, 但是从长远看来,我们建议你修改你的应用以使用 ONLY 关键字来排除子表。 参考 Section 5.5 获取关于继承的更多信息。
#default_with_oids = off    #如果既没有声明 WITH OIDS,又没有声明 WITHOUT OIDS, 那么这个选项控制 CREATE TABLE 和 CREATE TABLE AS 是否在新创建的表中包含一个 OID 字段。它还决定 SELECT INTO 创建的表里面是否包含 OID。 在 PostgreSQL 8.0.0 default_with_oids 缺省为真。 这也是以前的版本的 PostgreSQL 的行为。 不过,我们不鼓励假设表里面缺省会包含 OID。因此,在将来的版本的 PostgreSQL 里, 这个选项缺省会是假。
#escape_string_warning = off    #

# - 平台和客户端兼容性 -

#transform_null_equals = off    #如果打开它,那么下面这样的表达式 expr = NULL (或者 NULL = expr)被当做 expr IS NULL,处理,也就是说, 如果 expr 得出 NULL 值则返回真,否则返回假。 expr = NULL 正确的 SQL 标准兼容的行为总是返回 NULL(未知)。 因此这个选项缺省时是关闭的。


#---------------------------------------------------------------------------
# 客户化的选项
#---------------------------------------------------------------------------

#custom_variable_classes = ''                # 这个变量以逗号分隔的列表的形式声明一个或者多个用于客户变量的类。 一个客户变量通常是一个 PostgreSQL 并不太知道的变量, 但是被一些附加的模块使用。这样的变量的名字必须由一个类别名,一个点,以及一个变量名组成。 custom_variable_classes 声明在一次安装里的所有类别名。

论坛徽章:
0
5 [报告]
发表于 2006-04-13 22:09 |只看该作者

论坛徽章:
0
6 [报告]
发表于 2006-08-24 17:00 |只看该作者
zc!!!!!!!

论坛徽章:
0
7 [报告]
发表于 2012-08-26 13:38 |只看该作者
这个参数的名字可能有些让人糊涂
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP