Specifies the name of an additional process-ID (PID) file that the server should create for use by server administration programs.
At a glance
| Property | Value |
|---|---|
| Parameter | external_pid_file |
| Category | File Locations |
| Default | (see documentation) |
| Value type | string |
| Change scope | Server restart required (postgresql.conf) |
| Available in | PostgreSQL 12, 13, 14, 15, 16, 17, 18, 19 (added in 12) |
What it does
Specifies the name of an additional process-ID (PID) file that the server should create for use by server administration programs. This parameter can only be set at server start.
(Description quoted from the official PostgreSQL documentation.)
How to apply a change
Set it in postgresql.conf (or with ALTER SYSTEM) and restart the server — this parameter cannot change without a restart.
Inspect the current value and source with SHOW external_pid_file; or SELECT name, setting, unit, context, source FROM pg_settings WHERE name = 'external_pid_file';.
Tuning guidance
This is a deployment path, not something you tune for performance. Set it once to match how the cluster is laid out on disk (or leave it at the packaged default), keep it consistent across restarts and replicas, and change it only when deliberately relocating files. A wrong path prevents the server from starting.