选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档 / 配置参数 / 版本和平台兼容性

CONFIGURATION PARAMETER版本和平台兼容性 / 以前的 PostgreSQL 版本

sql_inheritance

让多种 SQL 命令默认包含继承子表。

Causes subtables to be included by default in various commands.

布尔 会话 引入 9.0(基线) 于 10 移除 0 次默认值变更

类型
布尔bool
上下文
会话任何用户都可在会话内用 SET 修改
默认值
on
引入版本
9.0(基线)
状态
于 10 移除

官方文档

版本轨迹

相对 PostgreSQL 9.5 无变化。

默认值变迁

on 9.0 – 9.6

默认值自 PostgreSQL 9.0 起没有变过。带单位的取值换算成了可读形式,原始的 boot_val 与单位写在悬浮提示里。

手册说明

官方原文

本站手册未收录此参数的说明。到官方文档查看 ↗

机制详解

sql_inheritance:让多种 SQL 命令默认包含继承子表。它可以按会话修改,便于在不影响全部负载的前提下比较计划或行为。 本站在 PG9.0–9.6 实测到它;boot_val 是编译或初始化基线,并不能证明某个运行集群的当前有效值。

启用时,多种命令会默认作用于继承后代,除非显式写 ONLY。PG10 移除了该兼容开关:现代 SQL 用 ONLY 排除后代,而声明式分区裁剪与 constraint_exclusion 决定实际扫描哪些子关系。

应与 constraint_exclusion、enable_partition_pruning、search_path、default_table_access_method 一起理解。请在目标服务器检查 SHOW 与 pg_settings,确认 source 和 pending_restart,并在修改前后对比真实负载、日志和资源指标。

调优建议

按典型负载给出的取值思路,不是放之四海皆准的配方:实际取值要看数据量、并发度与硬件。

  • OLTP在线事务处理

    不要把这个已退出的名称加入现代 OLTP 配置。应把原意迁移到文档给出的后继参数,在连接与写并发下验证,并清理仍会输出旧名称的自动化。

  • OLAP分析与批处理

    升级分析型环境前应盘点所有生成配置,把旧控制映射到后继项,并比较执行计划、吞吐、WAL 或日志行为;不能假设旧数值可直接搬用。

  • 小规格低配实例与开发机

    记录旧覆盖存在的原因后将其删除。小节点应先采用后继参数默认值,实测后再调整;未知的启动参数可能直接阻止服务器启动。

常见问题

  • 把 sql_inheritance 的实测 boot_val 当成初始化后或托管集群当前有效值的证明。
  • 忽略 pg_settings 报告的 user context,误以为修改会立即生效。
  • 孤立修改该参数,没有检查关联上限、可观测性和回滚路径。
  • 把已移除名称复制到现代 postgresql.conf,而没有迁移到文档给出的后继参数。

演化历史

相邻两个大版本之间的差异,新的在前。版本号链到该版的快照。

  1. PostgreSQL 10 ← 9.6 移除此参数

    该版起不再存在

逐版本快照

每个收录版本里的 7 项事实,与上一个存在的版本不同的格子带底色。版本号链到该版。

版本 默认值单位上下文类型最小值最大值枚举值
9.0 on 会话 布尔
9.1 on 会话 布尔
9.2 on 会话 布尔
9.3 on 会话 布尔
9.4 on 会话 布尔
9.5 on 会话 布尔
9.6 on 会话 布尔

参考资料

同类参数

参数 类型 上下文 默认值 版本变动 最近变更
Version and Platform Compatibility 版本和平台兼容性 10 个
以前的 PostgreSQL 版本 10
array_nulls 布尔 会话 on
允许在数组输入中使用 NULL 元素。 现存
backslash_quote 枚举 会话 safe_encoding
设置字符串字面量中是否允许使用反斜杠转义的单引号(\')。 现存
default_with_oids 布尔 会话 off
默认创建带 OID 的新表。 于 12 移除
escape_string_warning 布尔 会话 on
当普通字符串字面量含反斜杠转义时发出警告。 于 19 移除
lo_compat_privileges 布尔 会话(超级用户) off
启用大对象权限检查的向后兼容模式。 现存
operator_precedence_warning 布尔 会话 off
对自 PostgreSQL 9.4 起含义发生变化的表达式发出警告。 于 14 移除
quote_all_identifiers 布尔 会话 off
生成 SQL 片段时引用所有标识符。 现存
sql_inheritance 布尔 会话 on
让多种 SQL 命令默认包含继承子表。 于 10 移除
standard_conforming_strings 布尔 会话 on 9.11 次
使普通单引号字符串中的反斜杠按字面处理。 现存
synchronize_seqscans 布尔 会话 on
启用同步顺序扫描。 现存