Wie liste ich mit psql in einer Datenbank installierte Erweiterungen auf?

Antworten:

363

In psql wäre das

\dx

Weitere Informationen finden Sie im Handbuch: http://www.postgresql.org/docs/current/static/app-psql.html

Wenn Sie es in einfachem SQL ausführen, ist dies eine Auswahl von pg_extension:

SELECT * 
FROM pg_extension

http://www.postgresql.org/docs/current/static/catalog-pg-extension.html

ein Pferd ohne Name
quelle
@ SoichiHayashi: dann verwenden Sie wahrscheinlich eine alte Postgres-Version
a_horse_with_no_name
Ich verwende PostgreSQL Server 9.3.5, verwende jedoch den mit CentOS 6.5 gelieferten psql-Client 8.4.20. Vielleicht muss ich die neueste Version von psql installieren?
Soichi Hayashi
@SoichiHayashi \dx ist ein psql- Befehl, der mit 9.0 eingeführt wurde, als die create extensionFunktion veröffentlicht wurde. Also ja, Sie müssen auch Ihre aktualisieren psql(Sie sollten immer die psqlVersion verwenden, die Ihrer DB-Version entspricht)
a_horse_with_no_name
1
Wie ironisch. stackoverflow.com/questions/9463318/… Einer der Kommentare dort war, dass solche Fragen (und die allgemeine Unfähigkeit, wirklich schwierige Dinge wie \? zu tun) a_horse_with_no_name stören würden: D. Um fair zu sein, enthält diese Antwort weitere nützliche Informationen.
John Powell
11
Sie könnten vielleicht die vollständige SQL-Abfrage für die Liste erwähnen:select * from pg_extension
icl7126
82

Wenn Sie außerdem wissen möchten, welche Erweiterungen auf Ihrem Server verfügbar sind: SELECT * FROM pg_available_extensions

Dave Glassborow
quelle
5

Diese SQL-Abfrage liefert eine Ausgabe ähnlich der folgenden \dx:

SELECT e.extname AS "Name", e.extversion AS "Version", n.nspname AS "Schema", c.description AS "Description" 
FROM pg_catalog.pg_extension e 
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = e.extnamespace 
LEFT JOIN pg_catalog.pg_description c ON c.objoid = e.oid AND c.classoid = 'pg_catalog.pg_extension'::pg_catalog.regclass 
ORDER BY 1;

Vielen Dank an https://blog.dbi-services.com/listing-the-extensions-available-in-postgresql/

hit3k
quelle