17.2. Installing Postgres Pro Enterprise on Windows

On Windows systems, you can use a binary self-extracting interactive installer to install Postgres Pro core components and create the default database. The following components have their own installers that should be run separately once the core components are installed:

  • pg_probackup

  • pg_hint_plan

17.2.1. External Connections and Windows Firewall

By default, Postgres Pro server is listening for connections from the localhost only. To allow external connections to Postgres Pro server, select the "Allow external connections" checkbox to add the appropriate parameter into the postgresql.conf file, add a line into the pg_hba.conf file, and create a Windows Firewall rule.


Postgres Pro application is registered with Windows Firewall anyway, so if you have not enabled external connection during installation and decide to do it later, you only have to open Windows Firewall configuration in the Control Panel, find the Postgres Pro server here, and allow it to accept connections.

17.2.2. Supported Operating Systems

Postgres Pro is available for the following 64-bit Windows versions:

  • Windows 8.1, 10

  • Windows Server 2008 R2 or higher

17.2.3. Procedural Languages

The procedural languages PL/Perl, PL/Python are included in this distribution of Postgres Pro. The server has been built using the LanguagePack community distributions of those language interpreters. To use any of the these languages from within Postgres Pro, download and install the appropriate interpreters and ensure they are included in the PATH variable under which the database server will be started.

The current version of PL/Python is dynamically linked with Python shared library in the LanguagePack installers. Some distributions of Python interpreters (including ActivePython) on Windows do not include a dynamic library of Python. Such interpreters would no longer be functional with PL/Python. You are recommended to use LanguagePack installers for PL/Perl and PL/Python instead.

17.2.4. Windows Service Account

A special NT AUTHORITY\\NetworkService account is used by default. You can specify another Windows user for starting Postgres Pro service in the corresponding text box of the installer, if required. The provided user must have the right to start Windows services.

17.2.5. Command-Line Options

Installation directory path:


Silent install:


*.ini file with installation options:


17.2.6. INI File Format

You can add the following installation options to the [options] section of the INI file:

  • InstallDir — path where to install server

  • DataDir — path where to create default database

  • Port — TCP/IP port to listen. Default: 5432.

  • SuperUser — name of the database user who will have admin rights in the database

  • Password — password of the user

  • noExtConnections = 1 — don't allow external connection

  • Coding = UNICODE — character encoding to use in the database

  • Locale — locale to use in the database. There can be several different locales for each encoding

  • vcredist = no — do not install Visual C redistributable libraries (use it only if these libraries are already installed on your system)

  • envvar = 1 — set up environment variables helpful for Postgres Pro: PGDATA, PGDATABASE, PGUSER, PGPORT, PGLOCALEDIR

  • needoptimization = 0 — disable automatic tuning of configuration parameters based on the available system resources.

  • datachecksums = 0 — disable data checksums for the cluster.

  • serviceaccount — specify a Windows user for starting Postgres Pro service. The provided user must have the right to start Windows services. By default, Postgres Pro service is started on behalf of NT AUTHORITY\NetworkService, which is a special Windows Service Account.

  • servicepassword — provide the password for the Windows user specified in the serviceaccount option.

  • serviceid — change Postgres Pro service name.

  • islibc = 1 — use libc as the provider of the default collation.

17.2.7. Antivirus Considerations

It is strongly recommended to avoid using antivirus software on systems where Postgres Pro is running because it may cause additional load on your environment and result in unexpected database behavior that would lead to performance and reliability issues. If you need to use antivirus software, make sure to exclude the following directories from virus scanning as they do not contain any executable files:

  • PGDATA directory that stores main cluster data

  • Paths to created tablespaces