slackbuilds_ponce/system/postgresql/README.SBo
Andrew Clemons b5d00d92da
system/postgresql: Use same data dir for all 14.x releases.
Signed-off-by: Andrew Clemons <andrew.clemons@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
2022-01-25 14:44:40 +07:00

51 lines
1.9 KiB
Text

Before you can run postgresql you'll need to create the
database files in /var/lib/pgsql. The following should do
the trick.
# su postgres -c "initdb -D /var/lib/pgsql/14/data --locale=en_US.UTF-8 -A md5 -W"
Additionally, a logrotation script and init script are included.
For production level log file handling please read
https://www.postgresql.org/docs/14/logfile-maintenance.html
In order to start postgresql at boot and stop it properly at shutdown,
make sure rc.postgresql is executable and add the following lines to
the following files:
/etc/rc.d/rc.local
==================
# Startup postgresql
if [ -x /etc/rc.d/rc.postgresql ]; then
/etc/rc.d/rc.postgresql start
fi
/etc/rc.d/rc.local_shutdown
===========================
# Stop postgres
if [ -x /etc/rc.d/rc.postgresql ]; then
/etc/rc.d/rc.postgresql stop
fi
Additionally, rc.postgresql script has additional modes for stop/restart:
force-stop|force-restart (i.e. pg_ctl 'fast' mode)
unclean-stop|unclean-restart (i.e. pg_ctl 'immediate' mode)
See https://www.postgresql.org/docs/14/app-pg-ctl.html
From PostgreSQL 9.3 we support in place database upgrades using pg_upgrade:
https://www.postgresql.org/docs/14/pgupgrade.html
A few hints for PostgreSQL 10.x -> 14.x upgrade:
- Don't remove old PostgreSQL 10.x package
- Install PostgreSQL 14.x, note that binaries are in
'/usr/lib64/postgresql/14/bin'
- Follow regular pg_upgrade docs
- Remove old package when transition is over, or read comments in
rc.postgresql if you want to run multiple PostgreSQL versions in parallel
This script builds postgresql with some useful extension modules from
the contrib directory, see PG_EXTENSIONS in SlackBuild file.
To build PostgreSQL with all extensions, use the following command:
# PG_EXTENSIONS=ALL ./postgresql.SlackBuild
Please note that in order to actually use extension, you must execute
'CREATE EXTENSION [ IF NOT EXISTS ] extension_name' for each extension.