New Certificate Hub deployments no longer support an internal database. Instead, these deployments use an external database with the following requirements.

DBMS

The external Certificate Hub database must be hosted on the following Database Management System (DBMS).

DBMS

Version

​PostgreSQL

15 or higher​

Packages

Pre-packaged PostgreSQL packages typically include the postgresql-contrib subpackage. If not included, install this subpackage to obtain some of the required extensions.

https://www.postgresql.org/docs/current/contrib.html

Database storage

Calculate the required database storage based on the expected certificates and reports. For example, 1G storage is enough for 25,000 certificates and a few weeks of reports.

Data

Quantity

Bytes/Item

Total

Certificates

25,000 certificates

20 KB/certificate

500 MB

Reports

200 reports

1 MB/report

200 MB


700 MB

Database permissions

To create an external database user with sufficient permissions, connect to PSQL using the default PostgreSQL user and execute the following commands.

CREATE USER ${POSTGRES_USER} WITH NOSUPERUSER CREATEDB ENCRYPTED PASSWORD '${POSTGRES_PWD}';
\c postgres ${POSTGRES_USER}
CREATE DATABASE certhub;
\c certhub ${POSTGRES_USER}
CREATE EXTENSION IF NOT EXISTS pg_trgm;

Where:

  • ${POSTGRES_USER} is the value of the POSTGRES_USER configuration setting.
  • ${POSTGRES_PWD} is the value of the POSTGRES_PWD ​ configuration setting.

See Configuring the deployment for a description of both settings.

Database SSL connection

Certificate Hub only supports SSL-protected connections with the PostgreSQL database.

Database names

Database names should not use uppercase letters to avoid case sensitivity problems. Unquoted identifiers in SQL syntax are converted to lowercase, which can lead to problems when mapping to a name with uppercase letters.