2026-10-20 09:20:09

This commit is contained in:
support committed 2026-10-20 11:20:10 +02:00
1 parent a6ca621d3e
commit b120e037f7
8 files changed
+211 -6

No files matched your search

+31 -6
View File
@@ -41,10 +41,13 @@ The orchestrator runs the installers in this order:
4. pgAudit
5. set_user
6. pg_stat_statements
7. passwordcheck
8. pg_repack
9. pg_stat_monitor
10. pgvector
7. auto_explain
8. passwordcheck
9. pg_repack
10. pg_stat_monitor
11. pgvector
12. HypoPG
13. pg_hint_plan
After a successful run, the orchestrator:
@@ -66,10 +69,13 @@ Each component can also be installed independently. The PostgreSQL installation
./install_pgaudit.sh --version 18.6
./install_set_user.sh --version 18.6
./install_pg_stat_statements.sh --version 18.6
./install_auto_explain.sh --version 18.6
./install_passwordcheck.sh --version 18.6
./install_pg_repack.sh --version 18.6
./install_pg_stat_monitor.sh --version 18.6
./install_pgvector.sh --version 18.6
./install_hypopg.sh --version 18.6
./install_pg_hint_plan.sh --version 18.6
```
Each installer also accepts `-v 18.6` and the previous positional form (`./install_pg_cron.sh 18.6`). The all-in-one orchestrator passes its complete `--version` value to every component installer.
@@ -137,6 +143,18 @@ Builds and installs Percona's `pg_stat_monitor` extension.
Builds and installs pgvector against the selected PostgreSQL installation.
### `install_auto_explain.sh`
Builds and installs PostgreSQL's `auto_explain` contrib module from the matching PostgreSQL source. It has no `CREATE EXTENSION` control file; load it in sessions with `LOAD 'auto_explain'` or configure it for server startup.
### `install_hypopg.sh`
Builds and installs HypoPG against the selected PostgreSQL installation. Create the extension in each database where it will be used with `CREATE EXTENSION hypopg`.
### `install_pg_hint_plan.sh`
Builds and installs the pg_hint_plan tag matching the PostgreSQL major version when available. Create it in each database where it will be used with `CREATE EXTENSION pg_hint_plan`.
### `install_common.sh`
Shared helper functions used by the installers, including:
@@ -167,6 +185,8 @@ The following environment variables can override defaults:
| `PG_REPACK_TAG` | Latest release/tag | pg_repack source tag |
| `PG_STAT_MONITOR_TAG` | Latest release/tag | pg_stat_monitor source tag |
| `PGVECTOR_TAG` | Latest release/tag | pgvector source tag |
| `HYPOPG_TAG` | Latest release/tag | HypoPG source tag |
| `PG_HINT_PLAN_TAG` | PostgreSQL-major-compatible tag | pg_hint_plan source tag |
Repository variables can also be overridden when using a custom mirror:
@@ -178,6 +198,8 @@ SET_USER_REPOSITORY=owner/repository
PG_REPACK_REPOSITORY=owner/repository
PG_STAT_MONITOR_REPOSITORY=owner/repository
PGVECTOR_REPOSITORY=owner/repository
HYPOPG_REPOSITORY=owner/repository
PG_HINT_PLAN_REPOSITORY=owner/repository
```
Example:
@@ -197,7 +219,7 @@ When `CONFIG_FILE` is supplied, the orchestrator adds the modules and extensions
shared_preload_libraries = 'pg_cron,timescaledb,pgaudit,pg_stat_statements,pg_stat_monitor,passwordcheck'
```
`pg_repack`, pgvector, and `set_user` do not require `shared_preload_libraries`. `passwordcheck` is a PostgreSQL contrib module (not a SQL extension), and `pg_stat_activity` is a built-in PostgreSQL system view.
`pg_repack`, pgvector, HypoPG, and `set_user` do not require `shared_preload_libraries`. `auto_explain` and pg_hint_plan can be loaded per session or configured for server startup; they are not added automatically. `passwordcheck` and `auto_explain` are PostgreSQL contrib modules (not SQL extensions), and `pg_stat_activity` is a built-in PostgreSQL system view.
## Prerequisites
@@ -237,7 +259,10 @@ ls \
/app/postgres/rdbms/18.6/lib/timescaledb.so \
/app/postgres/rdbms/18.6/lib/pgaudit.so \
/app/postgres/rdbms/18.6/lib/set_user.so \
/app/postgres/rdbms/18.6/lib/pg_stat_monitor.so
/app/postgres/rdbms/18.6/lib/pg_stat_monitor.so \
/app/postgres/rdbms/18.6/lib/auto_explain.so \
/app/postgres/rdbms/18.6/lib/hypopg.so \
/app/postgres/rdbms/18.6/lib/pg_hint_plan.so
```
The extension SQL objects still need to be created in each target database with PostgreSQL's `CREATE EXTENSION` command.