This page describes the PostgreSQL extensions and lists the extensions supported by Cloud SQL.
PostgreSQL provides a way to extend the functionality of your database by bundling together multiple SQL objects into a single package that can be added or removed as a unit.
How you use PostgreSQL extensions
You must install an extension before you use it. To install an extension, you use the CREATE EXTENSION command with the psql tool. For information about using a specific extension, see the documentation for that extension.
You cannot create your own extensions with Cloud SQL. You can install only
extensions supported by Cloud SQL.
To request support for an extension, add a Me, too! vote for its issue in
the Issue Tracker
Cloud SQL) or create a new issue.
PostgreSQL extensions supported by Cloud SQL
Cloud SQL supports many of the standard PostgreSQL extensions:
The PostGIS 2.3 extension family is supported for Cloud SQL. This extension family includes the following extensions:
For more information about installing the PostGIS extension family, see PostGIS Installation.
Data type extensions
|btree_gin||Provides sample GIN operator classes that implement B-tree equivalent behavior.|
|btree_gist||Provides GiST index operator classes that implement B-tree equivalent behavior.|
|chkpass||Implements a data type
|citext||Provides a case-insensitive character string type
|cube||Implements a data type
|isn||Provides data types for some international product numbering standards.|
|ltree||Implements a data type
|lo||Support for managing Large Objects (also called LOs or BLOBs).|
|plpgsql||A loadable procedural language used to create SQL functions and trigger procedures that execute as a block on the server.|
|dict_int||An add-on dictionary template for full-text search that controls the indexing of integers.|
|dict_xsyn||An add-on dictionary template for full-text search that replaces words with groups of their synonyms.|
|earthdistance||Provides two approaches to calculating great circle distances on the surface of the Earth.|
|fuzzystrmatch||Provides several functions to determine similarities and distance between strings.|
|intagg||Provides an integer aggregator and an enumerator.|
|intarray||Provides a set of functions and operators for manipulating null-free arrays of integers and performing indexed searches on them.|
|pg_buffercache||Provides a means for examining what's happening in the shared buffer cache in real time.|
|pgcrypto||Provides cryptographic functions for PostgreSQL.|
|pgrowlocks||Provides row locking information for the specified table.|
|pg_prewarm||Provides a convenient way to load relation data into either the operating system buffer cache or the PostgreSQL buffer cache.|
|pg_stat_statements||Provides a means for tracking execution statistics of all SQL statements executed.|
|pgstattuple||Provides various functions to obtain tuple-level statistics.|
|pg_trgm||Provides functions and operators for determining the similarity of alphanumeric text based on trigram matching, as well as index operator classes that support fast searching for similar strings.|
|sslinfo||Provides information about the SSL certificate that the current client provided when it connected to the instance.|
|tablefunc||Includes various functions that return tables (multiple rows).|
|tsm_system_rows||Provides the table sampling method SYSTEM_ROWS, which can be used in the TABLESAMPLE clause of a SELECT command.|
|tsm_system_time||Provides the table sampling method SYSTEM_TIME, which can be used in the TABLESAMPLE clause of a SELECT command.|
|unaccent||A text search dictionary that removes accents (diacritic signs) from lexemes.|
|uuid-ossp||Provides functions to generate universally unique identifiers (UUIDs) using one of several standard algorithms.|