⚠️ WARNING
The ordering of listed projects or documents is random and has no connection to relevance or maturity levels!
Extension | Description |
---|---|
pgaudit |
Postgres auditing extension |
pg_dbms_metadata |
extract Postgres object metadata |
pg_auto_failover |
Postgres extension for failover without distributed consensus (by CitusData) |
pgextwlist |
Postgres extension whitelist allows superuser actions with non-superuser |
pg_squeeze |
optimize Postgres tables (by CyberTec) |
pg_hibernator |
Save/restore buffers across Postgres restarts (unique feature!) |
pglogical |
logical replication for Postgres |
pg_plan_advsr |
Postgres plan automatical advisor |
pgq |
Postgres Queue |
pgroonga |
Full-text search engine for Postgres |
pg_show_plans |
shows query plans in Postgres (by CyberTec) |
pg_store_plan |
store query plans in Postgres (by OSSC-DB) |
pg_statement_rollback |
Postgres extension for rollback to "as if a transaction never occured" (by LZLabs) |
pg_stats |
collect Postgres statistics |
pg_stat_statements |
collect Postgres statistics on statements |
pg_table |
cron for Postgres and more (by CyberTec) |
pgmodemx |
monitoring extension for Postgres |
pgspider |
multi-tenancy (by Toshiba techs) |
pgdd |
Postgres Data Dictionary (by Rust-proof Labs) |
pg_wait_sampling |
Statistics based on waits (by PostgresPro) |
pg_similarity |
Computes "distances" between strings (i.e. Levenstein) |
pg_proctab |
Provides functions to read basic stats from /proc |
login_hook |
Login hook (what else?) |
pgulid |
ULID support (requires pgcrypto extension) |
pg_ivm |
Incremental View Maintenance (auto-refresh materialized views) |
unit |
Units of Measure for Postgres (similar to unit(1) ) |
preprepare |
Seamlessly handle prepared statements for PgBouncer |
pg_ivm |
Postgres incremental view (IVM) maintenance extension |
sequential_uuids |
Sequential (time-based) UUIDs for Postgres (by Tomáš Vondra) |
plpgsql_check |
Extension to avoid issues with PL/PgSQL (by Pavel Stěhule) |
postgres-decoderbufs |
Postgres to Protobuf (by Debezium) |
anon |
Anonymize, anonymize, anonymize... (by Dalibo Labs) |
pg_spider_ext |
Distributed queries (by Toshiba) |
pg_idkit |
Generate many types of UUID replacements... |
pg_eventserv |
LISTEN /NOTIFY via WebSockets (by CrunchyData) |
pgsql-tweaks |
Miscellaneous useful functions/views for Postgres |
set_user |
Role transitions |
pg_rowalesce |
Coalesce for rows |
pg_subtrans_infos |
Provide information about sub-transactions (!) |
pgvector |
Vector similarity search for Postgres |
pgvecto |
Vector search for Postgres (type vector(n) for columns) |
pg_quack |
DuckDB extension for Postgres |
acl |
Access Control Lists (ACL) Extension |
PgMemento | Audit trail with schema versioning for Postgre using txn-based logging |
MobilityDB | An open source geospatial trajectory data management & analysis platform |
E-maj | Fine-grained write logging and time travel on subsets of the database |
PgMQ | Message queue in Postgres |
pg_timeseries |
Timeseries in Postgres |
pg_sqltxplain |
Helps explain Postgres execution plans |
Extension | Description |
---|---|
hydra |
Columnar store |
citus |
Transforms Postgres into a distributed database (by CitusData) |
timescaledb |
Transforms Postgres into a time-series database (by Timescale) |
orioledb |
storage engine, MVCC based on UNDO log, 64bit XIDs |
aqo |
Automatic Query Optimizer for Postgres (by PortgresPro) |
multicorn |
Foreign Data Wrappers (FDW) |
age |
Apache Age Graph Database |
omnigres |
Postgres as a Platform (!) |
ferretdb |
Postgres serves as platform for document store database |
pgroll |
Postgres schema migrations |
API | Description |
---|---|
RapidRows | Provides Postgres HTTP REST API |
pg_eventserv |
LISTEN /NOTIFY via WebSockets (by CrunchyData), client included |
PostGraphile | Extensible high-performance automatic GraphQL API for PostgresSQL |
pgwire | Postgres wire protocol in Rust |
Tool | Description |
---|---|
PgXN | PostgreSQL Extension Network |
PgBouncer | Postgres proxy and connection pooler |
PgCat | Posgres connection pooler with some unique features |
PgPool-II | connection pooler and loadbalancer for Postgres |
Odyssey | another excellent connection pooler by Yandex |
PgAgroal | yet another connection pooler (single-host only but performant) |
pg_basebackup |
Postgres backup ("native") |
PgBackrest | Postgres backup (advanced) |
PgBackrest Auto | PgBackrest backup validation etc. |
pgloader |
ingest data from miscellaneous foreign sources into Postgres |
PgBarman | Postgres backup/restore (supports PiTR/DR) |
PgMoneta | Postgres backup/restore |
PgRepack | repack (optimize) Postgres tables (like non-locking VACUUM or CLUSTER ) |
PgCompactTable | tool for reducing size of bloated tables and indexes without heavy locks |
PgActivity | htop(1) -like utility for Postgres (by Dalibo) |
PgMetrics | show statistic on Postgres databases (can be run from Docker too) |
PgTune | Postgres performance tuning |
RepMgr | Postgres replication manager (Slony I/logical replication) |
Patroni | Postgres replication manager (streaming replication) by Zalando |
PgWatch2 | gather Postgres metrices (by CyberTec) |
PgWatch3 | gather Postgres metrices (by CyberTec) |
PgShark | analyze Postgres protocol v2 and v3 |
PgMock | observe Postgres wire protocol traffic |
pg_catcheck |
check Postgres catalogue for inconsistencies or errors by EnterpriseDB |
PgDiff | get difference between database schemas |
pg_flame |
generate Brendan Gregg's flame graphs for EXPLAIN s |
pg_repack |
Get rid of table and index bloat without exclusive locking and online (alternative to cluster or vacuum full ) |
SQLFluff | SQL linter (Postgres' SQL too, of course) |
PgSpider | High-performance Postgres clustering engine |
PL/PgSQL Debugger | Debugger for PL/PgSQL by OmniDB |
PostgresML | Machine Learning? for Postgres |
FlameExplain | Flame graphs for Postgres explain ... |
PgBranch | Branch Postgres as if using git(1) |
PgSync | Sync data from one Postgres database to another |
SQLancer | Find logic bugs |
uSQL | Multi-SQL shell |
PgDSAT | Postgres Security Assessment Tool |
Codd | Postgres database migration tool |
PgDDL | Utility to dump Postgres DDLs |
Darold utils | Utilities for Postgres |
PgDSAT | Postgres Database Security Assessment Tool (CIS bench++) |
Tool | Description |
---|---|
PgBackrest | Backup (preferred) |
pg_rman |
Backup |
pgcopydb |
Backup |
PgPreFaulter | Streaming replication helper (!) |
BackMan | Cloud-native backup tool for misc. databases (including Postgres) |
pg_easy_replicate |
Setup logical replication |
Greenmask | Postgres data obsfucation |
Tool | Description |
---|---|
Debezium | Stream your data from Postgres (eg. using Protocol Buffers etc.) |
PgTyped | Typesafe SQL in TypeScript |
Mathesar | Quickly enter and analyze your data (F/OSS) |
Wireshark | Postgres dissector for Wireshark/Tshark |
Tool | Description |
---|---|
Evidence | Build data application using Postgres |
Omnigres | Make application using Postgres |
SQLPage | Build websites using Postgres |
AppSmith | Build internal website using (not only) Postgres |
API | Description |
---|---|
PostgREST | Turns Postgres into RESTful API |
Name | Language | Description |
---|---|---|
Cornucopia | Rust | Generate type-checked Rust from your PostgreSQL |
Sqitch | SQL | maintain database schemas |
Operator | Description |
---|---|
CloudNativePG | Open source K8s Postgres operator |
Postgres Operator | Postgres operator (by Zalando) |
Postgres Operator | Postgres operator (by Crunchy Data) |
Postgres Operator | Postgres operator (by Percona; based on operator by Crunchy Data) |
Kubegres | Kubernetes Postgres operator (by Reactive Tech) |
StackGres | Kubernetes Postgres operator (by OnGres) |
Posgres Operators at Operator Hub | all of them |
Toolkit | Description |
---|---|
Toolkit #1 | Postgres DBA toolkit for psql(1) (well-done) |
Toolkit #2 | Postgres DBA toolkit for psql(1) (with menu - needs some rework) |
Toolkit #3 | Postgres DBA tools (including shell scripts) |
Bloat Estimation | helps to understand where's the bloat |
DBA Scripts | collection of SQL "scripts" for DBAs |
Checks | primarily Nagios check by Bucardo |
Tool | Description |
---|---|
PgX | Write Postgres extensions (more) easily in Rust |
GDBPG | Make GDB debugging of Postgres easier (by Tomas Vondra) |
PgType | Implements Postgres types for Golang |
Tool | Description |
---|---|
PgVM | Postgres version manager |
PgEnv | Postgres binary manager |
Tool | Description |
---|---|
Neon | Separates Postgres from it's storage |
Pg | Postgres running in WASM with local storage in browser |
DoltGreSQL | Git inspired database on Postgres |
PostGUI | WUI for Postgres |
Knowledge Base | Description |
---|---|
pgPedia | Postgres wiki collecting extremely useful information |
pgStats | nice overview of Postgres statistics for every release version |
pgXn | source of Postgres extensions |
pgConfigurator | Postgres configuration tuning helper (by CyberTec) |
PostgreSQLCo.nf | Postgres configuration reference including external links to discussions and more |
PgConfig | Postgres configuration options diff |
PgLantern | Web access to Postgres mailing lists |
Book | Online | Free | Description |
---|---|---|---|
PostgreSQL Internals | yes | yes | a must to read book on Postgres internals (may be a bit outdated but still very relevant) |
Postgres 14 Internals | yes | yes | a must to read book on Postgres (by PostgresPro) |
Postgres - The First Experience | yes | yes | Postgres introduction (by PostgresPro) |
Postgres Hooks | yes | yes | Postgres' hooks description |
Blog | Commercial | Description |
---|---|---|
Planet PostgreSQL | no | aggregates blog posts on Postgres |
Cybertec PostgreSQL | yes | excellent blog on Postgres |
2ndQuadrant | yes | blog posts on Postgres |
PostgresPro | yes | blog posts on Postgres |
PostgresPro | yes | the same as the previous (?) |
Stefan Fercot's Blog | no | very good blog posts on pgBackRest |
Command Prompt | yes | blog posts on Postgres |
PostgreSQL Live | no | blog on Postgres community members |
Hubert "depesz" Lubaczewski | no | many excellent articles on Postgres |
DBI Services | yes | blog posts on Postgres |
Keith Fiske | no | blog posts on Postgres |
Adrien Nayrat | no | blog posts on Postgres |
Julien Rouhaud | no | blog posts on Postgres |
Marcus Hagander | no | blog posts on Postgres |
Michał Mackiewicz | no | the "Elephant Tamer"'s blog posts |
Bo Peng | no | author of PgPool-II |
RustProofLabs | yes | Rust extensions to Postgres et al. |
Country/State | Type | Remark |
---|---|---|
Swiss | PgDay | |
Russian | PgConf |
Resource | Media | Commercial | Description |
---|---|---|---|
PostgreSQL TV | Video | no | Postgres video channels (including companies etc.) |
Resource | Description |
---|---|
Anchor Modeling | Online tool can generate Postgres model SQL |