summaryrefslogtreecommitdiffstats
path: root/system/postgresql/README.SBo
blob: 894c8eb4258915f7c743cf99747cccbca296dd52 (plain)
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/9.4/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
http://www.postgresql.org/docs/9.4/interactive/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 http://www.postgresql.org/docs/9.4/static/app-pg-ctl.html

From PostgreSQL 9.3 we support in place database upgrades using pg_upgrade:
  http://www.postgresql.org/docs/9.4/static/pgupgrade.html

A few hints for PostgreSQL 9.3 -> 9.4 upgrade:
  - Don't remove old PostgreSQL 9.3.x package
  - Install PostgreSQL 9.4.x, note that binaries are in
    '/usr/lib64/postgresql/9.4/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
  - Run '/var/log/scripts/postgresql-9.4.x-x86_64-1_SBo' (doinst.sh script)
    from filesystem root, to create symlinks in /usr/bin to PostgreSQL binaries


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.

OpenLDAP Notes

With OpenLDAP versions 2.4.24 through 2.4.31, inclusive, each backend
process that loads libpq (via WAL receiver, dblink, or postgres_fdw) and
also uses LDAP will crash on exit.

The LDAP wont be enabled (regardless of '--with-ldap' flag in slackbuild)
for affected OpenLDAP versions, so we've removed that build flag alltogether.

(OpenLDAP 2.4.31 is the version included in Slackware 14.1)