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

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

文档 / 配置参数 / 文件位置

CONFIGURATION PARAMETER文件位置

extension_destdir

设置加载扩展时要加在路径前的目录。(实测下游 pg_settings 简述。)

Path to prepend for extension loading.

字符串 会话(超级用户) 引入 9.5 于 18 移除 0 次默认值变更

类型
字符串string
上下文
会话(超级用户)超级用户可在会话内用 SET 修改
默认值
空字符串原始值 ''
分类
文件位置
引入版本
9.5
状态
于 18 移除

版本轨迹

相对 PostgreSQL 16 无变化。

默认值变迁

空字符串 9.5 – 17

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

手册说明

本站手册未收录此参数的说明。

机制详解

版本矩阵证明,Debian/PGDG 二进制从 PG9.5 到 PG17 暴露 extension_destdir。穷尽 PostgreSQL 上游 GUC 源码的 pickaxe 也找不到引入提交,因为该名称来自 Debian 的 extension_destdir 打包补丁,而不是 PostgreSQL 上游源码树。

该补丁在服务器寻找扩展 control/SQL 文件以及函数背后的动态库时,加上类似 DESTDIR 的暂存根目录。Debian 的 pg_virtualenv 用它在文件安装到最终系统路径前测试软件包;它明确服务于打包与构建测试,并不是通用生产扩展搜索路径。

从 PG18 起,应使用上游 extension_control_path 管理 control/SQL 文件,并用 dynamic_library_path 管理共享库,或把扩展安装到标准位置。启动新版本前,要从配置文件、ALTER SYSTEM、角色/数据库设置和生成模板中彻底删除 extension_destdir。

调优建议

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

  • OLTP在线事务处理

    把它视为下游迁移债务,而不是调优项。应以受支持路径打包扩展,用数据库服务账号测试 extension_control_path 与 dynamic_library_path,并在升级 PG18 前删除旧键。

  • OLAP分析与批处理

    ETL 与分析扩展栈同样要迁移,包括 worker 和备用库;应按最终文件布局演练 CREATE EXTENSION、ALTER EXTENSION UPDATE、恢复与故障转移。

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

    优先使用标准软件包位置。单节点几乎不会从重建 Debian 构建暂存机制中获益,而未知 GUC 足以阻止现代服务器启动。

常见问题

  • 把 extension_destdir 写成 PostgreSQL 上游参数,或为它伪造上游引入提交。
  • 在 PG18+ 继续下发该下游名称,而实测包已经不再识别它。
  • 只迁移扩展 control 文件,却忘记路径设计中的共享库部分。
  • 只用构建用户测试,数据库服务账号却无法读取最终目录、文件或父路径。

演化历史

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

  1. PostgreSQL 18 ← 17 移除此参数

    该版起不再存在

  2. PostgreSQL 15 ← 14 仅描述更新

    简述 Path to prepend for extension loading Path to prepend for extension loading.

  3. PostgreSQL 9.5 ← 9.4 新增此参数

    PostgreSQL 9.5 起可用

逐版本快照

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

版本 默认值单位上下文类型最小值最大值枚举值
9.5 空字符串 会话(超级用户) 字符串
9.6 空字符串 会话(超级用户) 字符串
10 空字符串 会话(超级用户) 字符串
11 空字符串 会话(超级用户) 字符串
12 空字符串 会话(超级用户) 字符串
13 空字符串 会话(超级用户) 字符串
14 空字符串 会话(超级用户) 字符串
15 空字符串 会话(超级用户) 字符串
16 空字符串 会话(超级用户) 字符串
17 空字符串 会话(超级用户) 字符串

参考资料

同类参数

参数 类型 上下文 默认值 版本变动 最近变更
File Locations 文件位置 7 个
config_file 字符串 重启生效 未设置
设置服务器主配置文件。 现存
data_directory 字符串 重启生效 未设置
设置服务器数据目录。 现存
extension_destdir 字符串 会话(超级用户) 空字符串
设置加载扩展时要加在路径前的目录。(实测下游 pg_settings 简述。) 于 18 移除
external_pid_file 字符串 重启生效 未设置
将 postmaster PID 写入指定文件。 现存
hba_file 字符串 重启生效 未设置
设置服务器的 HBA 配置文件。 现存
hosts_file 字符串 重启生效 未设置
设置服务器的 hosts 配置文件路径。 现存
ident_file 字符串 重启生效 未设置
设置服务器的 ident 配置文件。 现存