Note
This documentation is for the new OMERO 5.2 version. See the latest OMERO 5.1.x version or the previous versions page to find documentation for the OMERO version you are using if you have not upgraded yet.
Warning
OMERO 5.2 is the last major version which will feature Windows support for OMERO.server and OMERO.web deployment. See this blog post for details. If you are installing a new server, we highly recommend you use a different OS (see Version requirements).
In order to be installed, OMERO.server requires a running PostgreSQL instance that is configured to accept connections over TCP. This section explains how to ensure that you have the correct PostgreSQL version and that it is installed and configured correctly.
For Windows-specific installation instructions, first see OMERO.server installation.
For OMERO 5.2, PostgreSQL version 9.4 or later is required; version 9.4 is recommended. Make sure you are using a supported version.
If your existing PostgreSQL installation is version 9.3 or earlier, it is recommended that you upgrade to a more up-to-date version. Before upgrading, stop the OMERO server and then perform a full dump of the database using pg_dump. See the OMERO.server backup and restore section for further details.
If a PostgreSQL server was not provided by your system, EnterpriseDB provide an installer.
You can check if PostgreSQL is listening on the default port (TCP/5432) by running the following command:
C:\> netstat -an | find "5432"
Note
The exact output of this command will vary. The important thing to recognize is whether or not a process is listening on TCP/5432.
If you cannot find a process listening on TCP/5432 you will need to find your postgresql.conf file and enable PostgreSQL’s TCP listening mode. The exact location of the postgresql.conf file varies between installations.
Once you have found the location of the postgresql.conf file on your particular installation, you will need to enable TCP listening. The area of the configuration file you are concerned about should look similar to this:
#listen_addresses = 'localhost' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
#port = 5432
max_connections = 100
# note: increasing max_connections costs ~400 bytes of shared memory per
# connection slot, plus lock space (see max_locks_per_transaction). You
# might also need to raise shared_buffers to support more connections.
#superuser_reserved_connections = 2
#unix_socket_directory = *
#unix_socket_group = *
#unix_socket_permissions = 0777 # octal
#bonjour_name = * # defaults to the computer name
OMERO.server must have permission to connect to the database that has been created in your PostgreSQL instance. This is configured in the host based authentication file, pg_hba.conf. Check the configuration by examining the contents of pg_hba.conf. It’s important that at least one line allows connections from the loopback address (127.0.0.1) as follows:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Note
The other lines that are in your pg_hba.conf are important either for PostgreSQL internal commands to work or for existing applications you may have. Do not delete them.
See also