Managing extensions
Managed Service for PostgreSQL supports many standard and some non-standard PostgreSQL extensions. A complete list of available extensions and versions based on the PostgreSQL version is provided below.
Warning
In Managed Service for PostgreSQL clusters, you can't manage PostgreSQL extensions using SQL commands.
Enabling libraries for extensions
For some extensions, you need to enable shared libraries. To link a library when creating or editing a cluster, specify its name in the Shared preload libraries parameter.
You can install the following libraries in Managed Service for PostgreSQL:
auto_explain
: Required for the auto_explain extension to function.pgaudit
: Required for the pgaudit extension to work correctly.pg_cron
: Required for the pg_cron extension to function.pg_hint_plan
: Required for the pg_hint_plan extension to function.pg_qualstats
: Required for the pg_qualstats extension to function.timescaledb
: Required to be able to use the TimescaleDB extension .
Warning
Enabling a shared library will cause PostgreSQL to restart on the master host.
Retrieving a list of installed extensions
- Go to the folder page and select Managed Service for PostgreSQL.
- Click on the name of the cluster you need and select the Databases section.
- In the PostgreSQL extensions column, you'll see a list of extensions enabled for each database.
If you don't have the Nebius AI command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To get a list of extensions for a database, run the command:
ncp managed-postgresql database get <database name> \
--cluster-name <cluster name>
The enabled extensions will be listed in the extensions
list.
Editing a list of installed extensions
- Go to the folder page and select Managed Service for PostgreSQL.
- Click on the name of the cluster you need and select the Databases tab.
- In the row with the desired database, click
- Select the extensions you need and click Edit.
If you don't have the Nebius AI command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change extensions for a database, pass their list in the --extensions
argument of a CLI command. In this case, extensions that are not included in the list will be disabled.
ncp managed-postgresql database update <database name> \
--cluster-name <cluster name>
--extensions <extension name>=<version>,<extension name>=<version>...
Note
The extension version is not considered when handling the command: you can pass any non-empty string as a version.
Supported PostgreSQL extensions and utilities
Extension |
Version |
Provides functions that normalize postal addresses sent as a line. |
3.3.2 |
Contains rules for standardizing US and Canadian mailing addresses for the |
3.3.2 |
Provides functions that allow you to verify the logical consistency of the relation structure. To use the extension, you need the |
1.3 |
Provides the
|
1.0 |
Enables access to database indexes based on Bloom filters |
1.0 |
Contains examples of GIN (Generalized Inverted Index) operator classes used for inverted searches. |
1.3 |
Contains GiST (Generalized Search Tree) operator classes. Unlike a B-tree index, GiST supports such operators as |
1.7 |
Provides the |
1.6 |
Adds support for Foreign Data Wrapper |
1.4 |
Provides the |
1.5 |
Allows connecting to other PostgreSQL databases from the current session. To use the extension, you need the |
1.2 |
Contains an example of an add-on dictionary template for full-text search. It allows preventing excessive growth of a list of unique words and speeding up search. |
1.0 |
(Extended Synonym Dictionary) contains an example of an add-on dictionary template for full-text search. It allows searching for a word using any of its synonyms. |
1.0 |
Provides a module for calculating distances between two points on the surface of the Earth. There are two ways to calculate them:
|
1.1 |
Provides functions to determine similarities and distance between strings. |
1.1 |
Implements the |
1.8 |
Adds support for virtual, or hypothetical, indexes. They are useful to discover if PostgreSQL will use real indexes to handle problematic queries without having to spend resources to create them. |
1.3.1 |
Provides functions and operators for manipulating arrays of integers that do not contain any |
1.5 |
Provides data types for international product numbering standards such as EAN13, UPC, ISBN, ISMN, and ISSN. Numbers are validated on input according to a hard-coded list of prefixes. |
1.2 |
Adds support for the JsQuery language that is used to query the |
1.1 |
Provides support for the |
1.1 |
Implements the |
1.2 |
Provides the |
1.0 |
Adds support for Foreign Data Wrapper To use the extension, you need the |
1.2 |
Adds functions and operators that emulate Oracle functionality and packages. |
3.25 |
Provides functions for monitoring the shared buffer cache. To use the extension, you need the |
1.3 |
Enables you to add scheduled jobs to a database and execute SQL commands directly from a job. Requires enabling the To use the extension, you need the Enabling the extension causes all hosts to restart. For more information, see Using pg_cron in Managed Service for PostgreSQL. |
1.4.1 |
Extends support for table partitioning, including time-based and serial-based. |
4.7.0 |
Allows collecting statistics on predicates found in Requires enabling the |
2.0.4 |
Allows loading relation data into either the operating system buffer cache or the PostgreSQL buffer cache. |
1.2 |
Provides functions to remove bloat from tables and indexes Unlike To use the extension, you need the |
1.4.8 |
Allows gathering statistics about reads and writes performed at the file system level. Requires enabling the To use the extension, you need the |
2.2.1 |
Tracks planning and execution statistics of all SQL queries run in a cluster. To use the extension, you need the |
1.10 |
Enables you to create a logical replication slot in the past. |
1.1 |
Provides tools for fast searching for similar strings based on trigram matching. |
1.6 |
The extension provides additional logging tools and enhances the audit features. Requires enabling the pgaudit For more information, see Using pgaudit in Managed Service for PostgreSQL. |
1.0.0 |
Provides cryptographic functions for PostgreSQL. For more information, see Using pgcrypto in Managed Service for PostgreSQL. |
1.3 |
Extends the PostGIS |
3.4.1 |
Provides the |
1.2 |
Provides functions to obtain tuple-level statistics. To use the extension, you need the |
1.5 |
Adds a vector similarity search. |
0.3.2 |
Allows GIS (Geographic Information Systems) objects to be stored and handled in PostgreSQL databases. |
3.3.2 |
Provides functions for geocoding based on TIGER |
3.3.2 |
Contains |
3.3.2 |
Adds support for Foreign Data Wrapper To use the extension, you need the |
1.1 |
Provides an access method to work with |
1.3 |
Implements the |
1.4 |
Provides a set of functions for computing similarity of two arrays. |
1.0 |
Provides a set of functions that return tables, i.e., multiple rows. |
1.0 |
Supports automatic partitioning across time and space (partitioning key), yet retains the standard PostgreSQL interface for data. This makes PostgreSQL scalable for time-series. Requires enabling the The TimescaleDB edition installed for the service is TimescaleDB Apache 2 Edition. It has limited functionality compared to TimescaleDB Community Edition. You cannot change the edition. For more information about the limitations, see the TimescaleDB documentation |
2.9.0 |
Provides a text search dictionary that removes diacritic signs. |
1.1 |
Provides functions to generate universally unique identifiers (UUIDs) using standard algorithms. |
1.1 |
Provides XPath querying and XSLT (Extensible Stylesheet Language Transformations) functionality. |
1.1 |
pgcompacttable
Command syntax:
./bin/pgcompacttable \
-h c-<cluster ID>.rw.mdb.nemax.nebius.cloud \
-p 6432 \
-U <usename> \
-W <password> \
-d <DB name> \
-n <schema name> \
-t <table name>
Requires enabling the pgstattuple
extension.
To use the extension, you need the mdb_admin
role.