pg-setup
pg-setup — set up a new Postgres Pro database cluster and manage the corresponding service
Synopsis
pg-setup
initdb
[--tune
= conf
] [initdb_options
]
pg-setup
find-free-port
pg-setup
set-server-port
port
pg-setup
set
parameter
value
pg-setup
service
service_option
Description
pg-setup is a shell script provided in the Postgres Pro distribution to automate database cluster setup on Linux systems. This script is provided as part of the postgrespro-ent-16-server
package. Once Postgres Pro is installed, you can find pg-setup in the
directory, where install-dir
/bininstall-dir
is /opt/pgpro/ent-16
.
pg-setup must be run as root, but performs database administration operations as user postgres
. You can run this script with different options to:
initialize the database cluster
configure the database cluster for a specific Postgres Pro product
check for available ports and change the port used by Postgres Pro server
enable/disable automatic startup of Postgres Pro service
start, stop, or restart Postgres Pro service
configure the database cluster for a specific Postgres Pro product
Options
pg-setup accepts the following command-line arguments:
initdb [--tune=
conf
] [initdb_options
]Initialize the database cluster on behalf of the
postgres
user.By default, the database cluster, configured for your Postgres Pro distribution, is initialized in the
/var/lib/pgpro/ent-16/data
directory, with checksums enabled,auth-local
parameter set topeer
, andauth-host
parameter set tomd5
. Localization settings are inherited from theLANG
environment variable for the current session. All theLC_*
environment variables are ignored. Optionally, you can provide initdb options to customize the installation.If the default database is created using pg-setup, the path to its data directory is stored in the
/etc/default/postgrespro-enterprise-16
file, so all the subsequent pg-setup commands, as well as any commands that manage Postgres Pro service, affect this database only. You cannot manage several databases using pg-setup.The
--tune
option sets the specified configuration for the database cluster. Predefined values ofconf
depend on the Postgres Pro edition and can be1c
,std
orent
. The value of1c
can be specified for any product. By default, the database cluster is configured for your Postgres Pro Enterprise edition. If you provide a value different from any predefined, the cluster will get non-customized configuration settings.For systems where more than one database server and/or application will run, you may need to adjust the configuration since pg-setup chooses the configuration settings depending on hardware characteristics, assuming that the system will use only one database server.
find-free-port
Search for a free port on your system. This option is useful if you are going to install more than one server instance, or the default 5432 port is used by another program.
set-server-port
port
Specify the port number on which the server will listen for connections. Use this option to avoid conflicts if you are installing more than one server instance on the same system.
Default: 5432
set
name
value
Set the specified configuration parameter to the provided
value
in thepostgresql.conf
file. If this parameter has been already defined by theALTER SYSTEM
command, its previous value is removed from thepostgresql.auto.conf
file.service
service_option
Manage Postgres Pro service using one of the following options:
enable
— enable automatic service startup upon system restart.disable
— disable automatic service startup upon system restart.start
— start the service.stop
— stop the service.condrestart
— restart the service if it is running when pg-setup is invoked.status
— return the Postgres Pro service status.
Notes
If you are installing Postgres Pro from the postgrespro-ent-16
package, pg-setup is invoked automatically with the default settings. As a result, the database cluster is initialized and the default database is created in the /var/lib/pgpro/ent-16/data
directory, Postgres Pro service autostart is enabled, and the service is started.
If you are installing Postgres Pro server directly from the postgrespro-ent-16-server
package, you can run this script manually to initialize the database cluster or manage the Postgres Pro service.
For details on binary installation specifics on Linux, see Section 17.1.