CONFIGURATION PARAMETER客户端连接默认值 / 区域和格式化
default_text_search_config
选择被那些没有显式参数指定配置的文本检索函数变体使用的文本检索配置。
Sets default text search configuration.
字符串 会话 引入 8.3 现存至 20 devel 0 次默认值变更
- 类型
- 字符串string
- 上下文
- 会话任何用户都可在会话内用 SET 修改
- 默认值
pg_catalog.simple- 引入版本
- 8.3
- 状态
- 现存
版本轨迹
相对 PostgreSQL 17 无变化。
默认值变迁
已记录的默认值在 PostgreSQL 9.0–19 之间未变。带单位的取值换算成了可读形式,原始的 boot_val 与单位写在悬浮提示里。
手册说明
选择被那些没有显式参数指定配置的文本检索函数变体使用的文本检索配置。详见第 12 章。内置默认值是 pg_catalog.simple,但是如果能够标识一个匹配该区域设置的配置,initdb 将用对应于选中的 lc_ctype 区域设置的值初始化配置文件。
机制详解
default_text_search_config:设置默认的文本搜索配置。只有调用方未显式指定配置时,文本搜索函数才使用它;initdb 可能选择与区域设置匹配的配置,而非内置 simple。
default_text_search_config 属于 USER 上下文。获授权角色可在会话内修改,ALTER ROLE 或 ALTER DATABASE 可为未来会话建立默认值。
它改变客户端边界上的表示、解析或区域行为,而不是物理存储。应与其他区域和格式参数,以及驱动的二进制或类型化协议协同考虑。
调优建议
按典型负载给出的取值思路,不是放之四海皆准的配方:实际取值要看数据量、并发度与硬件。
-
OLTP在线事务处理
按语言域与应用角色设置 default_text_search_config,或在长期查询中显式传入配置;在每个副本核对词典与软件包。
-
OLAP分析与批处理
在可复现索引与报表作业中固定配置,避免区域变化静默改变分词或排名。
-
小规格低配实例与开发机
除非需要语言感知搜索,否则使用 pg_catalog.simple 或 initdb 选择的区域配置;额外词典增加维护而非免费提升质量。
常见问题
- 只在一个会话中修改 default_text_search_config,却认为角色默认值、数据库默认值或其他池化会话也已随之改变。
- 误以为显示参数会改变已存储值或服务器端类型语义。
- 未测试文本解析客户端、导出与池化会话就修改角色或数据库默认值。
- 没有回滚计划及客户端或运维兼容测试,就全局修改 default_text_search_config。
演化历史
相邻两个大版本之间的差异,新的在前。版本号链到该版的快照。
-
PostgreSQL 8.3 ← 8.2 新增此参数
PostgreSQL 8.3 起可用
逐版本快照
每个收录版本里的 7 项事实,与上一个存在的版本不同的格子带底色。版本号链到该版。
| 版本 | 默认值 | 单位 | 上下文 | 类型 | 最小值 | 最大值 | 枚举值 |
|---|---|---|---|---|---|---|---|
| 8.3 | — | — | — | 字符串 |
— | — | — |
| 8.4 | — | — | — | 字符串 |
— | — | — |
| 9.0 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.1 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.2 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.3 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.4 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.5 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 9.6 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 10 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 11 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 12 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 13 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 14 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 15 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 16 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 17 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 18 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 19 | pg_catalog.simple |
— |
会话 |
字符串 |
— |
— |
— |
| 20 | — | — | — | 字符串 |
— | — | — |
参考资料
同类参数
| 参数 | 类型 | 上下文 | 默认值 | 版本变动 | 最近变更 |
|---|---|---|---|---|---|
| 区域和格式化 12 | |||||
client_encoding |
字符串 | 会话 | SQL_ASCII |
— | |
| 设置客户端编码(字符集)。 | 现存 | ||||
DateStyle |
字符串 | 会话 | ISO, MDY |
— | |
| 设置日期和时间值的显示格式,以及解释有歧义的日期输入值的规则。 | 现存 | ||||
default_text_search_config |
字符串 | 会话 | pg_catalog.simple |
— | |
| 选择被那些没有显式参数指定配置的文本检索函数变体使用的文本检索配置。 | 现存 | ||||
extra_float_digits |
整数 | 会话 | 1 |
121 次 | |
| 这个参数调整以文本形式输出浮点值时所用的位数,包括 float4,float8 以及几何数据类型。 | 现存 | ||||
icu_validation_level |
枚举 | 会话 | warning |
— | |
| 控制在遇到 ICU 区域设置验证问题时使用何种消息严重级别报告该问题。 | 现存 | ||||
IntervalStyle |
枚举 | 会话 | postgres |
— | |
| 设置时间间隔值的显示格式。 | 现存 | ||||
lc_messages |
字符串 | 会话(超级用户) | 空字符串 |
— | |
| 设置消息显示的语言。 | 现存 | ||||
lc_monetary |
字符串 | 会话 | C |
— | |
| 设置用于格式化货币量的区域设置,例如用 to_char 函数族。 | 现存 | ||||
lc_numeric |
字符串 | 会话 | C |
— | |
| 设置用于格式化数字的区域设置,例如用 to_char 函数族。 | 现存 | ||||
lc_time |
字符串 | 会话 | C |
— | |
| 设置用于格式化日期和时间的区域设置,例如用 to_char 函数族。 | 现存 | ||||
TimeZone |
字符串 | 会话 | GMT |
9.22 次 | |
| 设置用于显示和解释时间戳的时区。 | 现存 | ||||
timezone_abbreviations |
字符串 | 会话 | 未设置 |
9.11 次 | |
| 设置服务器在日期时间输入中接受的额外时区缩写集合(除当前 TimeZone 设置所定义的缩写之外)。 | 现存 | ||||