On the page that opens, enter the cluster name and an optional description.
(Optional) Select one of the pooling modes:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
(Optional) In the Pooling size field, specify the number of connections allowed in a pool for a single database.
In the Access field, select whether the cluster should have a public IP address and access through the internet.
In the Resources section, configure the cluster resources:
Select the number of vCPUs and RAM to allocate to the cluster.
Specify the storage capacity.
Set the number of the cluster hosts.
In the Database section, specify the parameters for the connection to the database:
Enter the database name.
Enter the username.The following usernames are reserved; do not specify them: admin, repl, monitor, postgres, public and none.
Enter the password. It must contain at least:
8 characters
One lowercase character
One uppercase character
One special character
(Optional) In the Backup settings section, configure the cluster backup:
Schedule the backup. The backup is created every day at the selected time.
--config-version: The PostgreSQL version. The service currently supports only version 16.
--config-pooler-config-pooling-mode: The mode of how to allocate connections from the database connection pool. Managed PostgreSQL supports the following options:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
--config-pooler-config-max-pool-size: The number of connections allowed in a pool for a single database.
--config-public-access: If true, the cluster has both a public and a private IP address, and the cluster is accessible through the internet.
--config-template-resources-platform: The resource platform for the database hosts. Managed PostgreSQL currently supports only the cpu-e2 platform.
--config-template-resources-preset: The resource preset. Specify one of the presets available forcpu-e2.
--config-template-disk-type: The disk type for the database hosts. Managed PostgreSQL currently supports only network-ssd disks.
--config-template-disk-size-gibibytes: The number of gibibytes in the cluster storage.
--config-template-hosts-count: The number of the cluster hosts.
--bootstrap-db-name: The database name.
--bootstrap-user-name: The username of the database user.The following usernames are reserved; do not specify them: admin, repl, monitor, postgres, public and none.
--bootstrap-user-password: The password for this user. The password must contain at least:
8 characters
One lowercase character
One uppercase character
One special character
--backup-backup-window-start: The backup schedule, in the HH:MM:SS format. The backup is created every day at the selected time.
--backup-retention-policy: How long, in days, every backup and write-ahead logs (WALs) should be kept. For example, 7d or 30d.
To configure the database, you can also use PostgreSQL parameters.
version: The PostgreSQL version. The service currently supports only version 16.
pooler_config.pooling_mode: The mode of how to allocate connections from the database connection pool. Managed PostgreSQL supports the following options:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
pooler_config.max_pool_size: The number of connections allowed in a pool for a single database.
public_access: If true, the cluster has both a public and a private IP address, and the cluster is accessible through the internet.
template.resources.platform: The resource platform for the database hosts. Managed PostgreSQL currently supports only the cpu-e2 platform.
template.resources.preset: The resource preset. Specify one of the presets available forcpu-e2.
template.disk.type: The disk type for the database hosts. Managed PostgreSQL currently supports only network-ssd disks.
template.disk.size_gibibytes: The number of gibibytes in the cluster storage.
template.hosts.count: The number of the cluster hosts.
postgresql_config_16: Additional PostgreSQL parameters for the database configuration.
bootstrap.user_name: The username of the database user.The following usernames are reserved; do not specify them: admin, repl, monitor, postgres, public and none.
bootstrap.user_password: The password for this user. The password must contain at least:
8 characters
One lowercase character
One uppercase character
One special character
backup.backup_window_start: The backup schedule, in the HH:MM:SS format. The backup is created every day at the specified time.
backup.retention_policy: How long, in days, every backup and write-ahead logs (WALs) should be kept. For example, 7d or 30d.
Managed PostgreSQL creates daily backups for each cluster, and you can create a new cluster from a backup. For more details and instructions, see Backups in Managed Service for PostgreSQL®.
Open the page of the required cluster and then go to the Settings tab.
Change the database pooling mode. Managed PostgreSQL supports the following options:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
In the Access field, select whether the cluster should have a public IP address and access through the internet.
In the Resource preset field, change the number of vCPUs and RAM that should be allocated to the cluster.
Change the number of hosts in the cluster.
In the Database section, change the password of the database user. The password must contain at least:
--config-pooler-config-pooling-mode: The mode of how to allocate connections from the database connection pool. Managed PostgreSQL supports the following options:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
--config-pooler-config-max-pool-size: The number of connections allowed in a pool for a single database.
--config-public-access: If true, the cluster has both a public and a private IP address, and the cluster is accessible through the internet.
--config-template-resources-preset: The resource preset. Specify one of the presets available forcpu-e2.
--config-template-hosts-count: The number of the cluster hosts.
--bootstrap-user-password: The password for this user. The password must contain at least:
8 characters
One lowercase character
One uppercase character
One special character
To configure the database, you can additionally use PostgreSQL parameters.
Only the parameters from the command above can be changed. To perform a full cluster update, add --full to the command. This will update all parameters with the default values or the values specified in the --full command.
Modify the manifest with the deployed infrastructure:
pooler_config.pooling_mode: The mode of how to allocate connections from the database connection pool. Managed PostgreSQL supports the following options:
Transaction: A connection is allocated from a connection pool for every transaction. Once the transaction is completed, the connection returns to the pool.The transaction mode is suitable for a large number of idle connections. Additionally, this mode allows you to allocate a smaller pooling size in comparison with the session mode.However, the transaction mode offers a limited support of PostgreSQL features; not all PostgreSQL clients are compatible with this mode.
Session (set by default): A connection is allocated from a connection pool for every client session. Once the session is terminated, the connection returns to the pool.More PostgreSQL clients support the session mode, over the transaction mode. Moreover, the session mode does not limit the number of PostgreSQL features that you can use.However, a database has to consume more resources to maintain long-lasting connections. You may need to increase the pooling size.
pooler_config.max_pool_size: The number of connections allowed in a pool for a single database.
public_access: If true, the cluster has both a public and a private IP address, and the cluster is accessible through the internet.
template.resources.preset: The resource preset. Specify one of the presets available forcpu-e2.
template.hosts.count: The number of the cluster hosts.
postgresql_config_16: Additional PostgreSQL parameters for the database configuration.
You can later restore a deleted cluster from its backup. Managed PostgreSQL preserves backups of deleted clusters for the retention period configured in the backup settings.
Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada, and used with their permission.