# 20.11. Client Connection Defaults

20.11.1. Statement Behavior

20.11.2. Locale and Formatting

20.11.3. Shared Library Preloading

20.11.4. Other Defaults

# 20.11.1. Statement Behavior

client_min_messages(enum)

Controls whichmessage levelsare sent to the client. Valid values areDEBUG5,DEBUG4,DEBUG3,DEBUG2,DEBUG1,LOG,NOTICE,WARNING, andERROR.每个级别包括其后的所有级别。级别越高,发送的消息就越少。默认是注意.注意日志这里的排名与在日志_分钟_消息.

信息级别消息总是发送到客户端。

搜索路径(细绳)

此变量指定在未指定模式的简单名称引用对象(表、数据类型、函数等)时搜索模式的顺序。当不同模式中存在同名对象时,使用在搜索路径中首先找到的对象。不在搜索路径中的任何模式中的对象只能通过使用限定(点分)名称指定其包含模式来引用。

价值为搜索路径必须是以逗号分隔的模式名称列表。任何不是现有架构的名称,或者是用户没有的架构用法权限,被默默地忽略。

如果列表项之一是特殊名称$用户,然后具有由返回的名称的模式当前用户被替换,如果存在这样的模式并且用户有用法许可。(如果不,$用户被忽略。)

系统目录架构,pg_catalog, 总是被搜索,无论它是否在路径中被提及。如果它在路径中被提及,那么它将按照指定的顺序进行搜索。如果pg_catalog不在路径中,那么它将被搜索搜索任何路径项。

同样,当前会话的临时表模式,pg_temp_*nnn*, 如果存在则总是被搜索。可以使用别名在路径中显式列出pg_temp.如果它未在路径中列出,则首先搜索它(甚至在pg_catalog)。但是,临时模式仅搜索关系(表、视图、序列等)和数据类型名称。它永远不会搜索函数或运算符名称。

当对象在没有指定特定目标模式的情况下创建时,它们将被放置在第一个有效的模式中搜索路径.如果搜索路径为空,则会报错。

此参数的默认值为“$用户”,公共.此设置支持共享使用数据库(其中没有用户拥有私有模式,并且所有共享使用民众)、私有的每用户模式,以及这些模式的组合。通过更改默认搜索路径设置(全局或每个用户)可以获得其他效果。

有关模式处理的更多信息,请参阅第 5.9 节.特别是,默认配置仅适用于数据库只有一个用户或几个相互信任的用户时。

可以通过SQL函数查看搜索路径的当前有效值current_schemas(看第 9.26 节)。这与检查价值不完全相同搜索路径, 自从current_schemas显示项目如何出现在搜索路径得到解决。

行安全(布尔值)

此变量控制是否引发错误以代替应用行安全策略。当设置为, 政策正常适用。当设置为离开, 查询失败,否则将应用至少一项策略。默认是.改成离开有限的行可见性可能导致不正确的结果;例如,pg_dump 默认情况下会进行更改。此变量对绕过每行安全策略的角色没有影响,即超级用户和角色旁路属性。

有关行安全策略的更多信息,请参阅创建政策.

default_table_access_method(细绳)

此参数指定在创建表或物化视图时使用的默认表访问方法,如果创建命令没有明确指定访问方法,或者何时选择...进入使用,它不允许指定表访问方法。默认是.

默认表空间(细绳)

此变量指定默认表空间,当一个对象(表和索引)创造命令没有明确指定表空间。

该值可以是表空间的名称,也可以是指定使用当前数据库的默认表空间的空字符串。如果该值与任何现有表空间的名称不匹配,PostgreSQL 将自动使用当前数据库的默认表空间。如果指定了非默认表空间,用户必须拥有创造权限,否则创建尝试将失败。

该变量不用于临时表;对他们来说,温度_表空间而是咨询。

创建数据库时也不使用此变量。默认情况下,新数据库从复制它的模板数据库继承其表空间设置。

如果在创建分区表时将此参数设置为空字符串以外的值,则分区表的表空间将设置为该值,该值将用作将来创建的分区的默认表空间,即使默认表空间从那以后发生了变化。

有关表空间的更多信息,请参阅第 23.6 节.

default_toast_compression(枚举)

此变量设置默认值吐司可压缩列的值的压缩方法。(这可以通过设置压缩列选项创建表要么更改表.) 支持的压缩方法是pglz和(如果 PostgreSQL 是用--with-lz4)lz4.默认是pglz.

临时表空间(细绳)

此变量指定在其中创建临时对象(临时表和临时表上的索引)的表空间,当创建命令没有明确指定表空间。用于对大型数据集进行排序等目的的临时文件也在这些表空间中创建。

该值是表空间名称的列表。当列表中有多个名称时,PostgreSQL 会在每次创建临时对象时随机选择列表中的一个成员;除了在事务中,连续创建的临时对象被放置在列表中的连续表空间中。如果列表的选定元素是空字符串,PostgreSQL 将自动使用当前数据库的默认表空间。

什么时候临时表空间以交互方式设置,指定不存在的表空间是错误的,指定用户没有的表空间也是如此创造特权。但是,当使用先前设置的值时,不存在的表空间将被忽略,用户缺少的表空间也是如此创造特权。特别是,当使用设置的值时,此规则适用postgresql.conf.

默认值为空字符串,这会导致在当前数据库的默认表空间中创建所有临时对象。

也可以看看默认_表空间.

check_function_body(布尔值)

该参数常开。当设置为离开,它在期间禁用例程正文字符串的验证创建函数创建过程.禁用验证可以避免验证过程的副作用,特别是防止由于前向引用等问题导致的误报。将此参数设置为离开在代表其他用户加载功能之前;皮克_dump 会自动执行此操作。

default_transaction_isolation(枚举)

每个 SQL 事务都有一个隔离级别,可以是“未提交读”、“已提交读”、“可重复读”或“可序列化”。此参数控制每个新事务的默认隔离级别。默认值为“已提交读”。

咨询第 13 章设置交易了解更多信息。

default_transaction_read_only(布尔值)

只读 SQL 事务不能更改非临时表。此参数控制每个新事务的默认只读状态。默认是离开(读/写)。

咨询设置交易了解更多信息。

default_transaction_deferrable(布尔值)

在运行时可序列化隔离级别,可延迟的只读 SQL 事务可能会在被允许继续之前被延迟。然而,一旦它开始执行,它就不会产生任何确保可串行化所需的开销;因此序列化代码没有理由因为并发更新而强制中止它,这使得该选项适用于长时间运行的只读事务。

此参数控制每个新事务的默认可延迟状态。它目前对读写事务或在隔离级别低于可序列化.默认是离开.

咨询设置交易了解更多信息。

交易隔离(枚举)

该参数反映了当前事务的隔离级别。在每笔交易开始时,将其设置为当前值默认_交易_隔离.任何后续更改它的尝试都等同于设置交易命令。

transaction_read_only(布尔值)

该参数反映当前事务的只读状态。在每笔交易开始时,将其设置为当前值默认_交易_读_只要.任何后续更改它的尝试都等同于设置交易命令。

交易延迟(布尔值)

该参数反映了当前交易的延期状态。在每笔交易开始时,将其设置为当前值默认_交易_可延期的.任何后续更改它的尝试都等同于设置交易命令。

session_replication_role(枚举)

控制当前会话的复制相关触发器和规则的触发。设置此变量需要超级用户权限,并导致丢弃任何以前缓存的查询计划。可能的值为起源(默认),复制品当地的.

此设置的预期用途是逻辑复制系统将其设置为replicawhen they are applying replicated changes. The effect of that will be that triggers and rules (that have not been altered from their default configuration) will not fire on the replica. See theALTER TABLEclausesENABLE TRIGGERandENABLE RULEfor more information.

PostgreSQL treats the settingsoriginandlocalthe same internally. Third-party replication systems may use these two values for their internal purposes, for example usinglocalto designate a session whose changes should not be replicated.

Since foreign keys are implemented as triggers, setting this parameter toreplicaalso disables all foreign key checks, which can leave data in an inconsistent state if improperly used.

statement_timeout(integer)

Abort any statement that takes more than the specified amount of time. Iflog_min_error_statementis set toERRORor lower, the statement that timed out will also be logged. If this value is specified without units, it is taken as milliseconds. A value of zero (the default) disables the timeout.

The timeout is measured from the time a command arrives at the server until it is completed by the server. If multiple SQL statements appear in a single simple-Query message, the timeout is applied to each statement separately. (PostgreSQL versions before 13 usually treated the timeout as applying to the whole query string.) In extended query protocol, the timeout starts running when any query-related message (Parse, Bind, Execute, Describe) arrives, and it is canceled by completion of an Execute or Sync message.

Settingstatement_timeoutpostgresql.conf不推荐,因为它会影响所有会话。

lock_timeout(整数)

在尝试获取表、索引、行或其他数据库对象上的锁时,中止等待超过指定时间量的任何语句。时间限制分别适用于每次锁定获取尝试。该限制适用于显式锁定请求(例如锁表, 或者选择更新没有现在等待) 和隐式获取的锁。如果指定此值没有单位,则以毫秒为单位。零值(默认值)禁用超时。

不像statement_timeout, 这个超时只能在等待锁时发生。请注意,如果statement_timeout是非零的,设置是相当没有意义的lock_timeout到相同或更大的值,因为语句超时总是首先触发。如果log_min_error_statement设定为错误或更低,超时的语句将被记录。

环境lock_timeoutpostgresql.conf不推荐,因为它会影响所有会话。

idle_in_transaction_session_timeout(整数)

终止在打开的事务中空闲(即等待客户端查询)超过指定时间量的任何会话。如果指定此值没有单位,则以毫秒为单位。零值(默认值)禁用超时。

此选项可用于确保空闲会话不会在不合理的时间内保持锁定。即使没有持有重要的锁,打开的事务也可以防止清除可能仅对该事务可见的最近死亡的元组;所以长时间保持空闲会导致表膨胀。看第 25.1 节更多细节。

idle_session_timeout(整数)

终止任何已空闲(即等待客户端查询)但不在打开的事务中超过指定时间量的会话。如果指定此值没有单位,则以毫秒为单位。零值(默认值)禁用超时。

与打开事务的情况不同,没有事务的空闲会话不会对服务器产生大的成本,因此启用此超时的需要少于idle_in_transaction_session_timeout.

小心对通过连接池软件或其他中间件建立的连接强制执行此超时,因为这样的层可能对意外的连接关闭反应不佳。仅对交互式会话启用此超时可能会有所帮助,也许仅将其应用于特定用户。

vacuum_freeze_table_age(整数)

真空如果表的pg_class.再冷冻西德字段已达到此设置指定的年龄。积极扫描不同于常规扫描真空因为它会访问每个可能包含未冻结 XID 或 MXID 的页面,而不仅仅是那些可能包含死元组的页面。默认为 1.5 亿笔交易。尽管用户可以将此值设置为从零到 20 亿的任意值,真空将默默地限制有效值到 95%自动真空_冻结_最大限度_年龄, 以便定期手册真空有机会在为表启动反环绕自动真空之前运行。有关更多信息,请参阅第 25.1.5 节.

vacuum_freeze_min_age(整数)

指定截止年龄(在事务中)真空应该用来决定是否在扫描表时冻结行版本。默认为 5000 万次交易。尽管用户可以将此值设置为从零到十亿的任何值,真空将默默地将有效值限制为值的一半自动真空_冻结_最大限度_年龄,以便强制自动清空之间没有不合理的短时间。有关更多信息,请参阅第 25.1.5 节.

vacuum_failsafe_age(整数)

指定表的最大年龄(在事务中)pg_class.再冷冻西德领域可以达到之前真空采取非常措施来避免系统范围的事务 ID 环绕失败。这是真空的最后手段。故障保护通常在自动清理以防止事务 ID 回绕已经运行了一段时间时触发,尽管故障保护可能在任何期间触发真空.

触发故障保护时,将不再应用任何有效的基于成本的延迟,并且会绕过进一步的非必要维护任务(例如索引清理)。

默认为 16 亿笔交易。尽管用户可以将此值设置为从零到 21 亿的任意值,真空会默默调整有效值不小于105%自动真空_冻结_最大限度_年龄.

vacuum_multixact_freeze_table_age(整数)

真空如果表的pg_class.relminxid字段已达到此设置指定的年龄。积极扫描不同于常规扫描真空因为它会访问每个可能包含未冻结 XID 或 MXID 的页面,而不仅仅是那些可能包含死元组的页面。默认值为 1.5 亿个 multixact。尽管用户可以将此值设置为从零到 20 亿的任意值,真空将默默地限制有效值到 95%自动真空_多方位_冻结_最大限度_年龄, 以便定期手册真空在为表启动反环绕之前有机会运行。有关更多信息,请参阅第 25.1.5.1 节.

vacuum_multixact_freeze_min_age(整数)

指定截止年龄(在 multixacts 中)真空应该用来决定在扫描表时是否用更新的事务 ID 或 multixact ID 替换 multixact ID。默认值为 500 万个多任务。尽管用户可以将此值设置为从零到十亿的任何值,真空将默默地将有效值限制为值的一半自动真空_多方位_冻结_最大限度_年龄,以便强制自动清空之间没有不合理的短时间。有关更多信息,请参阅第 25.1.5.1 节.

vacuum_multixact_failsafe_age(整数)

指定表的最大年龄(在 multixacts 中)pg_class.relminxid领域可以达到之前真空采取非常措施来避免系统范围内的 multixact ID 环绕失败。这是真空的最后手段。故障保护通常在自动清理以防止事务 ID 回绕已经运行了一段时间时触发,尽管故障保护可能在任何期间触发真空.

触发故障保护时,将不再应用任何有效的基于成本的延迟,并且会绕过进一步的非必要维护任务(例如索引清理)。

默认值为 16 亿个 multixact。尽管用户可以将此值设置为从零到 21 亿的任意值,真空会默默调整有效值不小于105%自动真空_多方位_冻结_最大限度_年龄.

bytea_output(枚举)

设置类型值的输出格式拜茶.有效值为十六进制(默认)和逃脱(传统的 PostgreSQL 格式)。看第 8.4 节了解更多信息。这拜茶无论此设置如何,type 始终接受两种输入格式。

xml二进制(枚举)

设置二进制值在 XML 中的编码方式。这适用于例如拜茶值由函数转换为 XMLxml元素或者xml森林.可能的值为base64十六进制,它们都在 XML Schema 标准中定义。默认是base64.有关 XML 相关函数的更多信息,请参阅第 9.15 节.

这里的实际选择主要是个人喜好问题,仅受客户端应用程序中可能的限制的限制。这两种方法都支持所有可能的值,尽管十六进制编码会比 base64 编码稍大一些。

xml选项(枚举)

设置是否文档或者内容is implicit when converting between XML and character string values. SeeSection 8.13for a description of this. Valid values areDOCUMENTandCONTENT. The default isCONTENT.

According to the SQL standard, the command to set this option is

SET XML OPTION { DOCUMENT | CONTENT };

This syntax is also available in PostgreSQL.

gin_pending_list_limit(integer)

Sets the maximum size of a GIN index's pending list, which is used whenfastupdateis enabled. If the list grows larger than this maximum size, it is cleaned up by moving the entries in it to the index's main GIN data structure in bulk. If this value is specified without units, it is taken as kilobytes. The default is four megabytes (4MB). This setting can be overridden for individual GIN indexes by changing index storage parameters. SeeSection 67.4.1andSection 67.5for more information.

# 20.11.2. Locale and Formatting

DateStyle(string)

Sets the display format for date and time values, as well as the rules for interpreting ambiguous date input values. For historical reasons, this variable contains two independent components: the output format specification (国际标准化组织,Postgres,SQL, 或者德语) 和年/月/日排序的输入/输出规范 (DMY,MDY, 或者YMD)。这些可以单独设置或一起设置。关键词欧元欧洲的是同义词DMY;关键字我们,非欧元, 和非欧洲是同义词MDY.看第 8.5 节了解更多信息。内置默认值是ISO、MDY, 但 initdb 将使用与所选行为相对应的设置初始化配置文件lc_time语言环境。

间隔样式(枚举)

设置间隔值的显示格式。价值sql_standard将产生与 SQL 标准间隔文字匹配的输出。价值postgres(这是默认值)将产生匹配 8.4 之前的 PostgreSQL 版本的输出,当日期样式参数设置为国际标准化组织.价值postgres_verbose将产生匹配 8.4 之前的 PostgreSQL 版本的输出,当日期样式参数设置为非国际标准化组织输出。价值iso_8601将产生与 ISO 8601 第 4.4.3.2 节中定义的时间间隔“带指示符的格式”相匹配的输出。

间隔样式参数也影响模糊区间输入的解释。看第 8.5.4 节了解更多信息。

时区(细绳)

设置显示和解释时间戳的时区。内置默认值是格林威治标准时间,但这通常在postgresql.conf;initdb 将在那里安装与其系统环境相对应的设置。看第 8.5.3 节了解更多信息。

timezone_abbreviations(细绳)

设置服务器将接受的用于日期时间输入的时区缩写集合。默认是'默认',这是一个适用于世界大部分地区的集合;还有'澳大利亚''印度',并且可以为特定安装定义其他集合。看B.4 节了解更多信息。

extra_float_digits(整数)

此参数调整用于浮点值文本输出的位数,包括浮动4,浮动8, 和几何数据类型。

如果值为 1(默认值)或更大,则浮点值以最短精度格式输出;看第 8.1.3 节.生成的实际位数仅取决于输出的值,而不取决于此参数的值。最多需要 17 位数字浮动8值,和 9 为浮动4价值观。这种格式既快速又精确,在正确读取时准确地保留了原始二进制浮点值。为了历史兼容性,允许值最大为 3.

如果该值为零或负数,则将输出四舍五入到给定的十进制精度。使用的精度是类型的标准位数 (FLT_DIG或者DBL_DIG视情况而定)根据此参数的值减小。(例如,指定 -1 将导致浮动4要输出的值四舍五入到 5 位有效数字,以及浮动8值四舍五入为 14 位。)这种格式速度较慢,并且不会保留二进制浮点值的所有位,但可能更易于人类阅读。

# 笔记

此参数的含义及其默认值在 PostgreSQL 12 中发生了变化;看第 8.1.3 节进一步讨论。

客户端编码(细绳)

设置客户端编码(字符集)。默认是使用数据库编码。PostgreSQL 服务器支持的字符集在第 24.3.1 节.

lc_messages(细绳)

设置显示消息的语言。可接受的值取决于系统;看第 24.1 节了解更多信息。如果此变量设置为空字符串(这是默认值),则该值以系统相关的方式从服务器的执行环境继承。

在某些系统上,此区域设置类别不存在。设置此变量仍然有效,但不会有任何效果。此外,有可能不存在所需语言的翻译消息。在这种情况下,您将继续看到英文消息。

只有超级用户可以更改此设置,因为它会影响发送到服务器日志以及客户端的消息,并且不正确的值可能会掩盖服务器日志的可读性。

lc_monetary(细绳)

设置用于格式化货币金额的语言环境,例如使用to_char函数族。可接受的值取决于系统;看第 24.1 节了解更多信息。如果此变量设置为空字符串(这是默认值),则该值以系统相关的方式从服务器的执行环境继承。

lc_numeric(细绳)

设置用于格式化数字的语言环境,例如使用to_char函数族。可接受的值取决于系统;看第 24.1 节了解更多信息。如果此变量设置为空字符串(这是默认值),则该值以系统相关的方式从服务器的执行环境继承。

lc_time(细绳)

Sets the locale to use for formatting dates and times, for example with theto_charfamily of functions. Acceptable values are system-dependent; seeSection 24.1for more information. If this variable is set to the empty string (which is the default) then the value is inherited from the execution environment of the server in a system-dependent way.

default_text_search_config(string)

Selects the text search configuration that is used by those variants of the text search functions that do not have an explicit argument specifying the configuration. SeeChapter 12for further information. The built-in default ispg_catalog.simple, but initdb will initialize the configuration file with a setting that corresponds to the chosenlc_ctypelocale, if a configuration matching that locale can be identified.

# 20.11.3. Shared Library Preloading

Several settings are available for preloading shared libraries into the server, in order to load additional functionality or achieve performance benefits. For example, a setting of'$libdir/mylib'would causemylib.so(or on some platforms,mylib.sl) to be preloaded from the installation's standard library directory. The differences between the settings are when they take effect and what privileges are required to change them.

PostgreSQL procedural language libraries can be preloaded in this way, typically by using the syntax'$libdir/plXXX'whereXXXispgsql,perl,tcl, 要么python.

只有专门用于 PostgreSQL 的共享库才能以这种方式加载。每个 PostgreSQL 支持的库都有一个“魔术块”,经过检查以保证兼容性。因此,不能以这种方式加载非 PostgreSQL 库。您也许可以使用操作系统工具,例如LD_PRELOAD为了那个原因。

通常,请参阅特定模块的文档以了解加载该模块的推荐方式。

local_preload_libraries(细绳)

此变量指定要在连接开始时预加载的一个或多个共享库。它包含一个以逗号分隔的库名称列表,其中每个名称都被解释为加载命令。条目之间的空格被忽略;如果您需要在名称中包含空格或逗号,请用双引号将库名称括起来。该参数值仅在连接开始时生效。后续更改无效。如果未找到指定的库,则连接尝试将失败。

任何用户都可以设置此选项。因此,可以加载的库仅限于出现在插件安装的标准库目录的子目录。(数据库管理员有责任确保那里只安装“安全”的库。)local_preload_libraries可以显式指定此目录,例如$libdir/插件/mylib,或者只指定库名称 -我的库将具有相同的效果$libdir/插件/mylib.

此功能的目的是允许非特权用户将调试或性能测量库加载到特定会话中,而无需显式加载命令。为此,通常使用选项客户端上的环境变量或使用改变角色集.

但是,除非一个模块是专门为非超级用户以这种方式使用而设计的,否则这通常不是正确的设置。看着会议_预载_图书馆反而。

session_preload_libraries(细绳)

此变量指定要在连接开始时预加载的一个或多个共享库。它包含一个以逗号分隔的库名称列表,其中每个名称都被解释为加载命令。条目之间的空格被忽略;如果您需要在名称中包含空格或逗号,请用双引号将库名称括起来。该参数值仅在连接开始时生效。后续更改无效。如果未找到指定的库,则连接尝试将失败。只有超级用户可以更改此设置。

此功能的目的是允许将调试或性能测量库加载到特定会话中,而无需显式加载发出命令。例如,汽车_解释可以通过设置此参数为给定用户名下的所有会话启用改变角色集.此外,无需重新启动服务器即可更改此参数(但更改仅在启动新会话时生效),因此以这种方式添加新模块更容易,即使它们应该应用于所有会话。

不像共享_预载_图书馆,在会话开始时而不是在首次使用时加载库并没有很大的性能优势。但是,使用连接池时有一些优势。

shared_preload_libraries(细绳)

此变量指定在服务器启动时要预加载的一个或多个共享库。它包含一个以逗号分隔的库名称列表,其中每个名称都被解释为加载命令。条目之间的空格被忽略;如果您需要在名称中包含空格或逗号,请用双引号将库名称括起来。此参数只能在服务器启动时设置。如果找不到指定的库,服务器将无法启动。

一些库需要执行某些只能在 postmaster 启动时进行的操作,例如分配共享内存、保留轻量级锁或启动后台工作程序。这些库必须在服务器启动时通过此参数加载。有关详细信息,请参阅每个库的文档。

也可以预加载其他库。通过预加载共享库,在首次使用该库时避免了库启动时间。但是,启动每个新服务器进程的时间可能会略有增加,即使该进程从不使用该库。因此,此参数仅推荐用于将在大多数会话中使用的库。此外,更改此参数需要重新启动服务器,因此这不是用于短期调试任务的正确设置,例如。采用会议_预载_图书馆为此。

# 笔记

在 Windows 主机上,在服务器启动时预加载库不会减少启动每个新服务器进程所需的时间;每个服务器进程将重新加载所有预加载库。然而,shared_preload_libraries对于需要在 postmaster 启动时执行操作的库,在 Windows 主机上仍然有用。

jit_provider(细绳)

This variable is the name of the JIT provider library to be used (seeSection 32.4.2). The default isllvmjit. This parameter can only be set at server start.

If set to a non-existent library, JIT will not be available, but no error will be raised. This allows JIT support to be installed separately from the main PostgreSQL package.

# 20.11.4. Other Defaults

dynamic_library_path(string)

If a dynamically loadable module needs to be opened and the file name specified in theCREATE FUNCTIONorLOADcommand does not have a directory component (i.e., the name does not contain a slash), the system will search this path for the required file.

The value fordynamic_library_pathmust be a list of absolute directory paths separated by colons (or semi-colons on Windows). If a list element starts with the special string$libdir, the compiled-in PostgreSQL package library directory is substituted for$libdir; this is where the modules provided by the standard PostgreSQL distribution are installed. (Usepg_config --pkglibdirto find out the name of this directory.) For example:

dynamic_library_path = '/usr/local/lib/postgresql:/home/my_project/lib:$libdir'

or, in a Windows environment:

dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'

The default value for this parameter is'$libdir'. If the value is set to an empty string, the automatic path search is turned off.

This parameter can be changed at run time by superusers, but a setting done that way will only persist until the end of the client connection, so this method should be reserved for development purposes. The recommended way to set this parameter is in thepostgresql.conf配置文件。

gin_fuzzy_search_limit(整数)

GIN 索引扫描返回的集合大小的软上限。有关更多信息,请参阅第 67.5 节.