During the installation of Qlik Sense with Shared Persistence, an administrator encounters an error message indicating that the database could not be reached during the Shared Persistence Connection Settings section of the installer:
This error message is a generic response when the installer cannot reach the database for a variety of reasons. In order of probability:
(1) The install is unable to communicate over the Database Port
This is the most common roadblock for this portion of the installer. To determine whether this cause is at play:
- Start PowerShell
- Run a Test-NetConnection command against the remote database host and port to validate connectivity. Example:
(2) PostgreSQL is not configured to allow the connection
The test in (1) purely connects for TCP connectivity and does not
check for whether authentication is allowed. Please reference article PostgreSQL: postgres.conf and pg_hba.conf explained
for how to configure PostgreSQL / Qlik Sense Repository Database to allow for connections from RIM nodes. The likely misconfigurations here would be in the listen_address
section of the postgres.conf
as well as the IP address(es) allowed in the pg_hba.conf
(3) FIPS is enabled
The next most common scenario is that the server which Qlik Sense is installed is configured to enforce FIPS policy. Due to a dependency in the install, additional steps are needed to allow the installer to operate in a FIPS environment. Reference article Unable to install Qlik Sense to a remote PostgreSQL database with FIPS enabled for more details on the resolution for this variant of blockers.
(4) Other issues
This can be a broad category but the best method for determining the cause here is by directly testing the connection to the database using the dependency that the installer use (npgsql). Attached to this article is npgsql.zip which contains the compiled .EXE which can be used to test.
- Uncompress the ZIP to C:\npgsql
- Run in PowerShell: .\npgsql_test.exe Host="foo.domain.local" port=5432 Username="foo@bar" Password="foo" Database=QSR
- Result: Npgsql.PostgresException (0x80004005): 28000: SSL connection is required. Please specify SSL options and retry.
This implies that exclusive SSL is configured on the PostgreSQL side. Removing this configuration and allowing standard connectivity bypasses this section of the installer.