Usando psql, ¿cómo enumero las extensiones instaladas en una base de datos?
¿Cómo enumero todas las extensiones que ya están instaladas en una base de datos o esquema de psql?
Ver también
- Encontrar una lista de extensiones disponibles con las que se envía PostgreSQL
En psql eso sería
\dx
Consulte el manual de psql para obtener más detalles.
Al hacerlo en SQL simple, sería una selección de pg_extension
:
SELECT *
FROM pg_extension;
Además si quieres saber qué extensiones están disponibles en tu servidor: SELECT * FROM pg_available_extensions
.
Ver pg_available_extensions
y pg_available_extension_versions
.
La siguiente consulta genera una lista de extensiones instaladas y sus versiones:
SELECT oid, extname, extversion FROM pg_extension;
oid | nombre externo | exversión |
---|---|---|
13763 | plpgsql | 1.0 |
18536 | http | 1.5 |
22466 | dict_xsyn | 1.0 |
Si desea saber qué otras extensiones y sus versiones están disponibles para su instalación, ejecute la siguiente consulta:
SELECT name, default_version, installed_version
FROM pg_available_extensions;
nombre | versión_predeterminada | versión_instalada |
---|---|---|
dict_xsyn | 1.0 | 1.0 |
segmento | 1.4 | NULO |
pgcripto | 1.3 | NULO |
plpgsql | 1.0 | 1.0 |
Para instalar una extensión (en caso de que no exista), ejecute la siguiente consulta:
CREATE EXTENSION [ IF NOT EXISTS ] extension_name;
Para actualizar una extensión a una versión más reciente, utilice la siguiente consulta:
ALTER EXTENSION extension_name UPDATE TO 'new_version';