PostgreSQL: PostgreSQL精选软件、库、工具和资源列表
https://github.com/dhamaniasad/awesome-postgres
Awesome Postgres
A curated list of awesome PostgreSQL software, libraries, tools and resources, inspired by awesome-mysql
PostgreSQL, often simply Postgres, is an object-relational database (ORDBMS). PostgreSQL is ACID-compliant and transactional. (see more: wikipedia:PostgreSQL, PostgreSQL.org)
:elephant: Contributions welcome. Add links through pull requests or create an issue to start a discussion. Please take a look at the contribution guidelines.
Contents
High-Availability
- BDR - BiDirectional Replication - a multimaster replication system for PostgreSQL
- Patroni - Template for PostgreSQL HA with ZooKeeper or etcd.
- Stolon - PostgreSQL HA based on Consul or etcd, with Kubernetes integration.
- pglookout - Replication monitoring and failover daemon.
- repmgr - Open-source tool suite to manage replication and failover in a cluster of PostgreSQL servers.
- Slony-I - “Master to multiple slaves” replication system with cascading and failover.
- PAF - PostgreSQL Automatic Failover: High-Availibility for Postgres, based on Pacemaker and Corosync.
- SkyTools - Replication tools, including PgQ, a queuing system, and Londiste, a replication system a bit simpler to manage than Slony.
Backups
- Barman - Backup and Recovery Manager for PostgreSQL by 2ndQuadrant.
- OmniPITR - Advanced WAL File Management Tools for PostgreSQL.
- pg_probackup – A fork of pg_arman, improved by @PostgresPro, supports incremental backups, backups from replica, multithreaded backup and restore, and anonymous backup without archive command.
- pgBackRest - Reliable PostgreSQL Backup & Restore.
- pg_back - pg_back is a simple backup script
- pghoard - Backup and restore tool for cloud object stores (AWS S3, Azure, Google Cloud, OpenStack Swift).
- wal-e (obsolete) - Simple Continuous Archiving for PostgreSQL to S3, Azure, or Swift by Heroku.
- wal-g - The successor of WAL-E rewritten in Go. Currently supports cloud object storage services by AWS (S3), Google Cloud (GCS), Azure, as well as OpenStack Swift, MinIO, and file system storages. Supports block-level incremental backups, offloading backup tasks to a standby server, provides parallelization and throttling options. In addition to Postgres, WAL-G can be used for MySQL and MongoDB databases.
- pitrery - pitrery is a set of Bash scripts to manage Point In Time Recovery (PITR) backups for PostgreSQL.
GUI
- Adminer - Full-featured database management tool written in PHP.
- Beekeeper Studio - Free and open source SQL client with a modern UI and great Postgres support. Cross platform.
- Chartbrew - Create live dashboards, charts, and client reports from PostgreSQL data. Features a query tool that works with SQL.
- Count - Web-based analytics platform with a notebook interface which connects to PostgreSQL (Commercial Software).
- DataGrip - IDE with advanced tool sets and good cross-platform experience (Commercial Software).
- Datazenit - Web-based PostgreSQL GUI (Commercial Software).
- DataRow - Cross-platform SQL Client for Amazon Redshift: Simple, Effortless, Extensible.
- DBeaver - Universal Database Manager with excellent support for PostgreSQL.
- dbglass - Cross-platform desktop client for PostgreSQL, built with Electron.
- Holistics - Online cross platform database management tool and SQL query reporting GUI with strong PostgreSQL support (Commercial Software).
- JackDB - Web-based SQL query interface (Commercial Software).
- Metabase - Simple dashboards, charts and query tool for PostgreSQL.
- Numeracy - Fast SQL editor with charts and dashboards for PostgreSQL (Commercial Software).
- OmniDB - Open Source Collaborative Environment
For Database Management - pgAdmin - PostgreSQL Administration and Management GUI.
- pgModeler - pgModeler is an open-source PostgreSQL Database Modeler.
- pgweb - Web-based PostgreSQL database browser written in Go.
- phpPgAdmin - The Premier Web Based Administration Tool for PostgreSQL.
- Postbird - PostgreSQL Client for macOS.
- PostgresCompare - Cross-platform database comparison and deployment tool (Commercial Software).
- Postico - Modern PostgreSQL Client for macOS (Commercial Software).
- PSequel - Clean and simple interface to perform common PostgreSQL tasks quickly (Commercial Software).
- SQL Tabs - Cross Platform Desktop Client for PostgreSQL written in JS.
- SQLPro for Postgres - Simple, powerful PostgreSQL manager for macOS (Commercial Software).
- temBoard - Web-based PostgreSQL GUI and monitoring.
- TablePlus - Native App which let you edit database and structure. High-end security ensured (Commercial Software).
- Valentina Studio - Cross-platform database administration tool (Free/Commercial)
- DbGate - The Smartest (no)SQL Database Client
Distributions
- Postgres.app - The Easiest Way to Get Started with PostgreSQL on macOS.
- PostgreSql.Binaries.Lite - Minimum set of Windows binaries of the PostgreSQL database. Also made available through NuGet.
CLI
- atlas - Atlas is a tool for managing and migrating database schemas using modern DevOps principles.
- pgcli - Postgres CLI with autocompletion and syntax highlighting
- pgsh - Branch your PostgreSQL Database like Git
- psql - The built-in PostgreSQL CLI client
- psql2csv - Run a query in psql and output the result as CSV
- nancy - The Nancy CLI is a unified way to manage automated database experiments either in clouds or on-premise
- schemaspy - SchemaSpy is a JAVA JDBC-compliant tool for generating your database to HTML documentation, including Entity Relationship diagrams
Server
- Postgres-XL - Scalable Open Source PostgreSQL-based Database Cluster.
- AgensGraph - Powerful graph database based on the PostgreSQL.
- Greenplum Database - Open source fork of PostgreSQL for large data volumes.
- YugabyteDB - Open Source Distributed SQL using a fork of PostgreSQL on top of distributed storage and transaction
Monitoring
- check_pgactivity - check_pgactivity is designed to monitor PostgreSQL clusters from Nagios. It offers many options to measure and monitor useful performance metrics.
- Check_postgres - Nagios check_postgres plugin for checking status of PostgreSQL databases.
- Instrumental - Real-time performance monitoring, including pre-made graphs for ease of setup (Commercial Software)
- libzbxpgsql - Comprehensive PostgreSQL monitoring module for Zabbix.
- PMM - Percona Monitoring and Management (PMM) is a Free and Open Source platform for monitoring and managing PostgreSQL, MySQL, and MongoDB.
- Pome - Pome stands for PostgreSQL Metrics. Pome is a PostgreSQL Metrics Dashboard to keep track of the health of your database.
- pgmetrics - pgmetrics is an open-source, zero-dependency, single-binary tool that can collect a lot of information and statistics from a running PostgreSQL server and display it in easy-to-read text format or export it as JSON and CSV for scripting.
- pg_view - Open-source command-line tool that shows global system stats, per-partition information, memory stats and other information.
- pgwatch2 - Flexible and easy to get started PostgreSQL metrics monitor focusing on Grafana dashboards.
- pgbench - Run a benchmark test on PostgreSQL.
- opm.io - Open PostgreSQL Monitoring is a free software suite designed to help you manage your PostgreSQL servers. It can gather stats, display dashboards and send warnings when something goes wrong.
- okmeter.io - Commercial SaaS agent-based monitoring with a very detailed PostgreSQL plugin. It automatically gathers 100s of stats, displays dashboards on every aspect and sends alerts when something goes wrong (Commercial Software).
- dexter - The automatic indexer for Postgres. Detects slow queries and creates indexes if configured to do so.
Extensions
- Citus - Scalable PostgreSQL cluster for real-time workloads.
- cstore_fdw - Columnar store for analytics with PostgreSQL.
- cyanaudit - Cyan Audit provides in-database logging of all DML activity on a column-by-column basis.
- pg_cron - Run periodic jobs in PostgreSQL.
- pglogical - Extension that provides logical streaming replication.
- pg_partman - Partition management extension for PostgreSQL.
- pg_paxos - Basic implementation of Paxos and Paxos-based table replication for a cluster of PostgreSQL nodes.
- pg_shard - Extension to scale out real-time reads and writes.
- PGStrom - Extension to offload CPU intensive workloads to GPU.
- pgxn PostgreSQL Extension Network - central distribution point for many open-source PostgreSQL extensions
- PipelineDB - A PostgreSQL extension that runs SQL queries continuously on streams, incrementally storing results in tables.
- plpgsql_check - Extension that allows to check plpgsql source code.
- PostGIS - Spatial and Geographic objects for PostgreSQL.
- PG_Themis - Postgres binding as extension for crypto library Themis, providing various security services on PgSQL’s side.
- zomboDB - Extension that enables efficient full-text searching via the use of indexes backed by Elasticsearch.
- pgMemento - Provides an audit trail for your data inside a PostgreSQL database using triggers and server-side functions written in PL/pgSQL.
- TimescaleDB - Open-source time-series database fully compatible with Postgres, distributed as extension
- pgTAP - Database testing framework for Postgres
- HypoPG - HypoPG provides hypothetical/virtual indexes feature.
- pgRouting - pgRouting extends the PostGIS/PostgreSQL geospatial database to provide geospatial routing and other network analysis functionality.
- PGroonga - PGroonga provides a new index access method that uses Groonga allowing super fast full text search feature against all languages.
- PGAudit - The PostgreSQL Audit Extension (or pgaudit) provides detailed session and/or object audit logging via the standard logging facility provided by PostgreSQL.
- PostgresML - Machine learning and AI inside your database, including vectors, LLMs, and classic ML. Train, predict and manage the entire lifecycle of machine learning models using only SQL.
Optimization
- pg_flame - A flamegraph generator for query plans.
- PgHero - PostgreSQL insights made easy.
- pgMustard - A modern user interface
forEXPLAIN
, that also provides performance tips (Commercial Software). - pgtune - PostgreSQL configuration wizard.
- pgtune - Online version of PostgreSQL configuration wizard.
- pgconfig.org - PostgreSQL Online Configuration Tool (also based on pgtune).
- PoWA - PostgreSQL Workload Analyzer gathers performance stats and provides real-time charts and graphs to help monitor and tune your PostgreSQL servers.
- pg_web_stats - Web UI to view pg_stat_statements.
- TimescaleDB Tune - a program for tuning a TimescaleDB database to perform its best based on the host’s resources such as memory and number of CPUs.
Utilities
- apgdiff - Compares two database dump files and creates output with DDL statements that can be used to update old database schema to new one.
- ERAlchemy - ERAlchemy generates Entity Relation (ER) diagram from databases.
- Hasura GraphQL Engine - Blazing fast, instant realtime GraphQL APIs on Postgres with fine grained access control, also trigger webhooks on database events.
- ldap2pg - Synchronize roles and privileges from YML and LDAP.
- mysql-postgresql-converter - Lanyrd’s MySQL to PostgreSQL conversion script.
- ora2pg - Perl module to export an Oracle database schema to a PostgreSQL compatible schema.
- pg_activity - top like application for PostgreSQL server activity monitoring.
- pg-formatter - A PostgreSQL SQL syntax beautifier (Node.js).
- pganalyze - PostgreSQL Performance Monitoring (Commercial Software).
- pgbadger - Fast PostgreSQL Log Analyzer.
- PgBouncer - Lightweight connection pooler for PostgreSQL.
- pgCenter - Provides convenient interface to various statistics, management task, reloading services, viewing log files and canceling or terminating database backends.
- pg_chameleon - Real time replica from MySQL to PostgreSQL with optional type override migration and migration capabilities.
- pgclimb - Export data from PostgreSQL into different data formats.
- pg_docs_bot - Browser extension to redirect PostgreSQL docs links to the current version.
- pgfutter - Import CSV and JSON into PostgreSQL the easy way.
- PGInsight - CLI tool to easily dig deep inside your PostgreSQL database.
- pg_insights - Convenient SQL for monitoring Postgres database health.
- pgloader - Loads data into PostgreSQL using the COPY streaming protocol, and does so with separate threads for reading and writing data.
- pgMonitor - Postgres metrics collection and visualization that can be deployed to bare metal, virtual machines, or Kubernetes.
- pgpool-II - Middleware that provides connection pooling, replication, load balancing and limiting exceeding connections.
- pgsync - Tool to sync PostgreSQL data to your local machine.
- PGXN client - Command line tool to interact with the PostgreSQL Extension Network
- postgresql-metrics - Tool that extracts and provides metrics for your PostgreSQL database.
- PostgREST - Serves a fully RESTful API from any existing PostgreSQL database.
- pREST - Serve a RESTful API from any PostgreSQL database (Golang)
- PostGraphile - Instant GraphQL API or GraphQL schema for your PostgreSQL database
- yoke - PostgreSQL high-availability cluster with auto-failover and automated cluster recovery.
- pglistend - A lightweight PostgresSQL
LISTEN
/NOTIFY
daemon built on top ofnode-postgres
. - ZSON - PostgreSQL extension for transparent JSONB compression
- pg_bulkload - It’s a high speed data loading utility for PostgreSQL.
- pg_migrate - Manage PostgreSQL codebases and make VCS simple.
- sqitch - Tool for managing versioned schema deployment
- pgmigrate - CLI tool to evolve schema migrations, developed by Yandex.
- pgcmp - Tool to compare database schemas, with capability to accept some persistent differences
- pg-differ - Tool for easy initialization / updating of the structure of PostgreSQL tables, migration alternative (Node.js).
- sqlcheck - Automatically detects common SQL anti-patterns. Such anti-patterns often slow down queries. Addressing them will, therefore, help accelerate queries.
- postgres-checkup - a new-generation diagnostics tool that allows users to collect deep analysis of the health of a Postgres database.
- ScaffoldHub.io - Generate fullstack PostgreSQL apps with Angular, Vue or React (Commercial Software).
Language bindings
- Common Lisp: Postmodern
- Clojure: clj-postgresql
- Elixir: postgrex
- Go: pq, pgx
- Haskell: postgresql-simple
- Java: PostgreSQL JDBC Driver
- .Net/.Net Core: Npgsql
- Node: node-postgres, pg-promise, pogi, slonik, postgres
- Perl: DBD-Pg
- PHP: Pomm, pecl/pq
- Python: psycopg2, asyncpg
- R: RPostgreSQL
- Ruby: pg
- Rust: rust-postgresql, pgx
- Lua: luapgsql
PaaS (PostgreSQL as a Service)
- Aiven PostgreSQL - PostgreSQL as a service in AWS, Azure, DigitalOcean, Google Cloud and UpCloud; plans range from $19/month single node instances to large highly-available setups, free trial for two weeks.
- Amazon RDS for PostgreSQL - Amazon Relational Database Service (RDS) for PostgreSQL
- Azure Database for PostgreSQL - Azure Database for PostgreSQL provides fully managed, enterprise-ready community PostgreSQL database as a service. It provides builtin HA, elastic scaling and native integration with Azure ecosystem.
- Crunchy Bridge - Fully managed Postgres from the Postgres experts. Available across all major cloud providers: Amazon AWS, Google GCP, Microsoft Azure. No lock-in with full super-user support.
- Database Labs - Get a production-ready cloud PostgreSQL server in minutes, from $20 a month Backups, monitoring, patches, and 24/7 tech support all included.
- DigitalOcean Managed Databases - Fully managed PostgreSQL databases. No free plan. Starting at $15/mo. Daily backups with point-in-time recovery. Standby nodes with auto-failover.
- ElephantSQL - Offers databases ranging from shared servers for smaller projects and proof of concepts, up to enterprise grade multi server setups. Has free plan for up to 5 DBs, 20 MB each.
- Google Cloud SQL for PostgreSQL - Fully-managed database service that makes it easy to set up, maintain, manage, and administer your PostgreSQL relational databases on Google Cloud Platform.
- Heroku Postgres - Plans from free to huge, operated by PostgreSQL experts. Does not require running your app on Heroku. Free plan includes 10,000 rows, 20 connections, up to two backups, and has PostGIS support.
- Render Managed PostgreSQL - Secure, reliable, and completely hands-off managed PostgreSQL. Encryption at rest, automated backups, and expandable SSD storage included in all plans. Plans start at $7 per month for 256MB RAM and 1GB storage (free for first 90 days).
- Scaleway Managed Database - Fully managed PostgreSQL databases with HA, scaling, and automated backups, hosted in the EU. Starting at €10 per month.
- Neon - Fully managed serverless PostgreSQL. Neon separates storage and compute to offer modern developer features such as serverless, branching, bottomless storage, and more.
Docker images
- citusdata/citus - Citus official images with citus extensions. Based on the official Postgres container.
- mdillon/postgis - PostGIS 2.3 on Postgres 9. Based on the official Postgres container.
- postgres - Official postgres container (from Docker)
Resources
Tutorials
- Backup and recover a PostgreSQL DB using wal-e - Tutorial about setting up continuous archiving in PostgreSQL using wal-e.
- PG Casts - Free weekly PostgreSQL screencasts by Hashrocket.
- Postgres Guide - Guide designed as an aid for beginners and experienced users to find specific tips and explore tools available within PostgreSQL.
- PostgreSQL Exercises - Site to make it easy to learn PostgreSQL by doing exercises.
- tutorialspoint PostgreSQL tutorial - Very extensive collection of tutorials on PostgreSQL
- postgresDBSamples - A collection of sample postgres schemas
- PostgreSQL Primer for Busy People - A collection of the most common commands used in PostgreSQL
- pg-utils - Useful DBA tools by Data Egret
Blogs
- Planet PostgreSQL - Blog aggregation service for PostgreSQL.
- Andrew Dunstan’s PostgreSQL and Technical blog
- Bruce Momjian’s PostgreSQL blog
- Craig Kerstiens PostgreSQL posts - Set of posts on PostgreSQL cool features, tips and tricks.
- Database Soup - Josh Berkus’ blog.
- Michael Paquier’s blog
- Robert Haas’ blog
- select * from depesz; - Hubert Lubaczewski’s blog.
Articles
- What PostgreSQL has over other open source SQL databases: Part I
- What PostgreSQL has over other open source SQL databases: Part II
- the ultimate postgres vs mysql blog post
- Debugging PostgreSQL performance, the hard way
- Why use Postgres?
- Superfast CSV imports using PostgreSQL’s COPY command
- Tricking Postgres into using an insane – but 200x faster – query plan
Documentation
- Wiki - user documentation, how-tos, and tips ‘n’ tricks
Newsletters
- Postgres Weekly - Weekly newsletter that contains articles, news, and repos relevant to PostgreSQL.
Videos
- Citus Data Youtube channel - Citus related videos
- EnterpriseDB Youtube channel - EnterpriseDB related videos
- Postgres Conference Youtube channel - Conference videos
- Scaling Postgres - Postgres video blog series by Creston Jamison
Community
- Mailing lists - Official mailing lists for Postgres for support, outreach, and more. One of the primary channels of communication in the Postgres community.
- Reddit - A reddit community for PostgreSQL users with over 12000 users
- Slack - Slack channel for Postgres with over 7000 users
- Telegram - Several groups for PostgreSQL in different langauges: Russian >4200 people, Brazilian Portuguese >2300 people, Indonesian ~1000 people, English >750 people
- #postgresql on Freenode - The most popular IRC channel about Postgres on Freenode with over 1000 users
Roadmaps
- PostgreSQL Roadmap - A roadmap providing step wise guide to PostgreSQL.
注:中文为机器翻译,仅供参考
很棒的 Postgres
受Awesome-mysql 启发,精选的PostgreSQL软件、库、工具和资源列表
PostgreSQL,通常简称为 Postgres,是一个对象关系数据库(ORDBMS)。PostgreSQL符合 ACID且是事务性的。(更多信息请参见:维基百科:PostgreSQL、PostgreSQL.org)
:elephant: 欢迎贡献。通过拉取请求添加链接或创建问题以开始讨论。请查看贡献指南。
内容
高可用性
- BDR - 双向复制 - PostgreSQL 的多主复制系统
- Patroni - 使用 ZooKeeper 或 etcd 的 PostgreSQL HA 模板.
- Stolon - 基于 Consul 或 etcd 的 PostgreSQL HA,与 Kubernetes 集成。
- pglookout - 复制监控和故障转移守护进程。
- repmgr - 用于管理 PostgreSQL 服务器集群中的复制和故障转移的开源工具套件。
- Slony-I - 具有级联和故障转移功能的“主到多个从”复制系统。
- PAF - PostgreSQL 自动故障转移:Postgres 的高可用性,基于 Pacemaker 和 Corosync。
- SkyTools - 复制工具,包括 PgQ(一个排队系统)和 Londiste(一个比 Slony 更容易管理的复制系统)。
备份
- Barman - 2ndQuadrant 的 PostgreSQL 备份和恢复管理器。
- OmniPITR - 用于 PostgreSQL 的高级 WAL 文件管理工具。
- pg_probackup – pg_arman 的一个分支,由 @PostgresPro 改进,支持增量备份、副本备份、多线程备份和恢复以及无需存档命令的匿名备份。
- pgBackRest - 可靠的 PostgreSQL 备份和恢复。
- pg_back - pg_back 是一个简单的备份脚本
- pghoard - 用于云对象存储(AWS S3、Azure、Google Cloud、OpenStack Swift)的备份和恢复工具。
- wal-e(已过时) - Heroku 将 PostgreSQL 简单连续存档到 S3、Azure 或 Swift.
- wal-g - 用 Go 重写的 WAL-E 的后继者。目前支持 AWS (S3)、Google Cloud (GCS)、Azure 以及 OpenStack Swift、MinIO 和文件系统存储的云对象存储服务。支持块级增量备份,将备份任务卸载到备用服务器,提供并行化和限制选项。除了 Postgres 之外,WAL-G 还可用于 MySQL 和 MongoDB 数据库。
- pitrery -pitrery 是一组 Bash 脚本,用于管理 PostgreSQL 的时间点恢复 (PITR) 备份。
图形用户界面
- Adminer - 用 PHP 编写的全功能数据库管理工具。
- Beekeeper Studio - 免费开源 SQL 客户端,具有现代 UI 和强大的 Postgres 支持。跨平台。
- Chartbrew - 从 PostgreSQL 数据创建实时仪表板、图表和客户报告。具有与 SQL 配合使用的查询工具。
- Count - 基于 Web 的分析平台,具有连接到 PostgreSQL(商业软件)的笔记本界面。
- DataGrip - 具有先进工具集和良好跨平台体验的 IDE(商业软件)。
- Datazenit - 基于 Web 的 PostgreSQL GUI(商业软件)。
- DataRow - 适用于 Amazon Redshift 的跨平台 SQL 客户端:简单、轻松、可扩展。
- DBeaver - 通用数据库管理器,对 PostgreSQL 具有出色的支持。
- dbglass - PostgreSQL 的跨平台桌面客户端,使用 Electron 构建。
- Holistics - 在线跨平台数据库管理工具和 SQL 查询报告 GUI,具有强大的 PostgreSQL 支持(商业软件)。
- JackDB - 基于 Web 的 SQL 查询界面(商业软件)。
- Metabase - 适用于 PostgreSQL 的简单仪表板、图表和查询工具。
- Numeracy - 带有图表和仪表板的快速 SQL 编辑器,适用于 PostgreSQL(商业软件)。
- OmniDB - 用于数据库管理的开源协作环境
- pgAdmin - PostgreSQL 管理和管理 GUI。
- pgModeler - pgModeler 是一个开源 PostgreSQL 数据库建模器。
- pgweb - 用 Go 编写的基于 Web 的 PostgreSQL 数据库浏览器。
- phpPgAdmin - 首要的基于 Web 的 PostgreSQL 管理工具。
- Postbird - 适用于 macOS 的 PostgreSQL 客户端。
- PostgresCompare - 跨平台数据库比较和部署工具(商业软件)。
- Postico - 适用于 macOS 的现代 PostgreSQL 客户端(商业软件)。
- Psequel - 干净简单的界面,可快速执行常见的 PostgreSQL 任务(商业软件)。
- SQL Tabs - 用 JS 编写的 PostgreSQL 跨平台桌面客户端。
- SQLPro for Postgres - 适用于 macOS(商业软件)的简单、强大的 PostgreSQL 管理器。
- temBoard - 基于 Web 的 PostgreSQL GUI 和监控。
- TablePlus - 本机应用程序,可让您编辑数据库和结构。确保高端安全(商业软件)。
- Valentina Studio - 跨平台数据库管理工具(免费/商业)
- DbGate - 最智能的(非)SQL 数据库客户端
发行版
- Postgres.app - 在 macOS 上开始使用 PostgreSQL 的最简单方法。
- PostgreSql.Binaries.Lite - PostgreSQL 数据库的最小 Windows 二进制文件集。也可通过 NuGet 获取。
命令行界面
- atlas - Atlas 是一个使用现代 DevOps 原则管理和迁移数据库模式的工具。
- pgcli - 具有自动完成和语法突出显示功能的 Postgres CLI
- pgsh - 像 Git 一样对 PostgreSQL 数据库进行分支
- psql - 内置 PostgreSQL CLI 客户端
- psql2csv - 在 psql 中运行查询并将结果输出为 CSV
- nancy - Nancy CLI 是在云中或本地管理自动化数据库实验的统一方法
- schemaspy - SchemaSpy 是一个兼容 JAVA JDBC 的工具,用于将数据库生成 HTML 文档,包括实体关系图
服务器
- Postgres-XL - 可扩展的基于 PostgreSQL 的开源数据库集群。
- AgensGraph - 基于 PostgreSQL 的强大图形数据库。
- Greenplum 数据库- 用于大数据量的 PostgreSQL 开源分支。
- YugabyteDB - 在分布式存储和事务之上使用 PostgreSQL 的分支的开源分布式 SQL
监控
- check_pgactivity - check_pgactivity 旨在从 Nagios 监控 PostgreSQL 集群。它提供了许多选项来测量和监控有用的性能指标。
- Check_postgres - Nagios check_postgres 插件,用于检查 PostgreSQL 数据库的状态。
- 工具- 实时性能监控,包括易于设置的预制图表(商业软件)
- libzbxpgsql - Zabbix 的综合 PostgreSQL 监控模块。
- PMM - Percona 监控和管理 (PMM) 是一个免费开源平台,用于监控和管理 PostgreSQL、MySQL 和 MongoDB。
- Pome - Pome 代表 PostgreSQL 指标。Pome 是一个 PostgreSQL 指标仪表板,用于跟踪数据库的运行状况。
- pgmetrics - pgmetrics 是一个开源、零依赖、单二进制工具,可以从正在运行的 PostgreSQL 服务器收集大量信息和统计数据,并以易于阅读的文本格式显示或将其导出为 JSON 和 CSV脚本编写。
- pg_view - 开源命令行工具,显示全局系统统计信息、每个分区信息、内存统计信息和其他信息。
- pgwatch2 - 灵活且易于入门的 PostgreSQL 指标监视器,专注于 Grafana 仪表板。
- pgbench - 在 PostgreSQL 上运行基准测试。
- opm.io - Open PostgreSQL Monitoring 是一款免费软件套件,旨在帮助您管理 PostgreSQL 服务器。它可以收集统计数据、显示仪表板并在出现问题时发送警告。
- okmeter.io - 基于商业 SaaS 代理的监控,具有非常详细的 PostgreSQL 插件。它会自动收集数百个统计数据,显示各个方面的仪表板,并在出现问题时发送警报(商业软件)。
- dexter - Postgres 的自动索引器。检测慢速查询并创建索引(如果配置为这样做)。
扩展
- Citus - 用于实时工作负载的可扩展 PostgreSQL 集群。
- cstore_fdw - 用于使用 PostgreSQL 进行分析的列式存储。
- yanaudit - Cyan Audit 提供数据库内逐列记录所有 DML 活动的功能。
- pg_cron - 在 PostgreSQL 中运行定期作业。
- pglogic - 提供逻辑流复制的扩展。
- pg_partman - PostgreSQL 的分区管理扩展。
- pg_paxos - PostgreSQL 节点集群的 Paxos 和基于 Paxos 的表复制的基本实现。
- pg_shard - 扩展实时读写。
- PGStrom - 将 CPU 密集型工作负载卸载到 GPU 的扩展。
- pgxn PostgreSQL 扩展网络 - 许多开源 PostgreSQL 扩展的中央分发点
- PipelineDB - 一个 PostgreSQL 扩展,可在流上连续运行 SQL 查询,并将结果增量存储在表中。
- plpgsql_check - 允许检查 plpgsql 源代码的扩展。
- PostGIS - PostgreSQL 的空间和地理对象。
- PG_Themis - Postgres 绑定作为加密库 Themis 的扩展,在 PgSQL 端提供各种安全服务。
- zomboDB - 通过使用 Elasticsearch 支持的索引实现高效全文搜索的扩展。
- pgMemento - 使用以 PL/pgSQL 编写的触发器和服务器端函数为 PostgreSQL 数据库内的数据提供审计跟踪。
- TimescaleDB - 与 Postgres 完全兼容的开源时间序列数据库,作为扩展分发
- pgTAP - Postgres 的数据库测试框架
- HypoPG - HypoPG 提供假设/虚拟索引功能。
- pgRouting - pgRouting 扩展了 PostGIS/PostgreSQL 地理空间数据库以提供地理空间路由和其他网络分析功能。
- PGroonga - PGroonga 提供了一种新的索引访问方法,该方法使用 Groonga 允许针对所有语言的超快速全文搜索功能。
- PGAudit - PostgreSQL 审计扩展(或 pgaudit)通过 PostgreSQL 提供的标准日志记录工具提供详细的会话和/或对象审计日志记录。
- PostgresML - 数据库内的机器学习和 AI,包括向量、LLM 和经典 ML。仅使用 SQL 来训练、预测和管理机器学习模型的整个生命周期。
优化
- pg_flame - 用于查询计划的火焰图生成器。
- PgHero - PostgreSQL 见解变得简单。
- pgMustard - 的现代用户界面
EXPLAIN
,还提供性能提示(商业软件)。 - pgtune - PostgreSQL 配置向导。
- pgtune - PostgreSQL 配置向导的在线版本。
- pgconfig.org - PostgreSQL 在线配置工具(也基于 pgtune)。
- PoWA - PostgreSQL 工作负载分析器收集性能统计数据并提供实时图表和图形,以帮助监控和调整您的 PostgreSQL 服务器。
- pg_web_stats - 用于查看 pg_stat_statements 的 Web UI。
- TimescaleDB Tune - 一个程序,用于根据主机资源(例如内存和 CPU 数量)调整 TimescaleDB 数据库以使其发挥最佳性能。
公用事业
- apgdiff - 比较两个数据库转储文件并使用 DDL 语句创建输出,该语句可用于将旧数据库模式更新为新数据库模式。
- ERAlchemy - ERAlchemy 从数据库生成实体关系(ER)图。
- Hasura GraphQL Engine - Postgres 上超快、即时的实时 GraphQL API,具有细粒度的访问控制,还可以触发数据库事件的 Webhook。
- ldap2pg - 同步 YML 和 LDAP 中的角色和权限。
- mysql-postgresql-converter - Lanyrd 的 MySQL 到 PostgreSQL 转换脚本。
- ora2pg - Perl 模块,用于将 Oracle 数据库模式导出到 PostgreSQL 兼容模式。
- pg_activity - 用于 PostgreSQL 服务器活动监控的顶级应用程序。
- pg-formatter - PostgreSQL SQL 语法美化器 (Node.js).
- pganalyze - PostgreSQL 性能监控(商业软件)。
- pgbadger - 快速 PostgreSQL 日志分析器。
- PgBouncer - PostgreSQL 的轻量级连接池。
- pgCenter - 为各种统计、管理任务、重新加载服务、查看日志文件以及取消或终止数据库后端提供方便的界面。
- pg_chameleon - 从 MySQL 到 PostgreSQL 的实时副本,具有可选的类型覆盖迁移和迁移功能。
- pgclimb - 将数据从 PostgreSQL 导出为不同的数据格式。
- pg_docs_bot - 将 PostgreSQL 文档链接重定向到当前版本的浏览器扩展。
- pgfutter - 以简单的方式将 CSV 和 JSON 导入 PostgreSQL。
- PGInsight - CLI 工具,可轻松深入了解 PostgreSQL 数据库。
- pg_insights - 用于监控 Postgres 数据库运行状况的便捷 SQL。
- pgloader - 使用 COPY 流协议将数据加载到 PostgreSQL 中,并使用单独的线程来读取和写入数据。
- pgMonitor - Postgres 指标收集和可视化,可以部署到裸机、虚拟机或 Kubernetes。
- pgpool-II - 提供连接池、复制、负载平衡和限制超出连接的中间件。
- pgsync - 将 PostgreSQL 数据同步到本地计算机的工具。
- PGXN 客户端- 与 PostgreSQL 扩展网络交互的命令行工具
- postgresql-metrics - 为 PostgreSQL 数据库提取和提供指标的工具。
- PostgREST - 从任何现有 PostgreSQL 数据库提供完全 RESTful API。
- perst - 从任何 PostgreSQL 数据库(Golang)提供 RESTful API
- PostGraphile - 适用于 PostgreSQL 数据库的即时 GraphQL API 或 GraphQL 架构
- yoke - 具有自动故障转移和自动集群恢复功能的 PostgreSQL 高可用性集群.
- pglistend -
LISTEN
构建NOTIFY
在node-postgres
. - ZSON - 用于透明 JSONB 压缩的 PostgreSQL 扩展
- pg_bulkload - 这是 PostgreSQL 的高速数据加载实用程序。
- pg_migrate - 管理 PostgreSQL 代码库并使 VCS 变得简单。
- sqitch - 用于管理版本化架构部署的工具
- pgmigrate - 用于发展模式迁移的 CLI 工具,由 Yandex 开发。
- pgcmp - 比较数据库模式的工具,能够接受一些持久的差异
- pg-differ - 用于轻松初始化/更新 PostgreSQL 表结构的工具,迁移替代方案(Node.js)。
- sqlcheck - 自动检测常见的 SQL 反模式。此类反模式通常会减慢查询速度。因此,解决这些问题将有助于加快查询速度。
- postgres-checkup - 新一代诊断工具,允许用户收集 Postgres 数据库健康状况的深入分析。
- ScaffoldHub.io - 使用 Angular、Vue 或 React(商业软件)生成全栈 PostgreSQL 应用程序。
语言绑定
- Common Lisp:后现代
- Clojure:clj-postgresql
- 灵丹妙药:postgrex
- 去:pq、pgx
- Haskell:postgresql-简单
- Java:PostgreSQL JDBC 驱动程序
- .Net/.Net Core:Npgsql
- 节点:node-postgres、pg-promise、pogi、slonik、postgres
- Perl:DBD-Pg
- PHP:Pomm、pecl/pq
- Python:psycopg2、asyncpg
- R:RPostgreSQL
- 红宝石:pg
- Rust:rust-postgresql、pgx
- Lua:luapgsql
PaaS (PostgreSQL 即服务)
- Aiven PostgreSQL - PostgreSQL 作为 AWS、Azure、DigitalOcean、Google Cloud 和 UpCloud 中的服务;计划范围从 19 美元/月的单节点实例到大型高可用设置,免费试用两周。
- Amazon RDS for PostgreSQL - 适用于 PostgreSQL 的 Amazon Relational Database Service (RDS)
- Azure Database for PostgreSQL - Azure Database for PostgreSQL 提供完全托管、企业就绪的社区 PostgreSQL 数据库即服务。它提供内置 HA、弹性扩展以及与 Azure 生态系统的本机集成。
- Crunchy Bridge - 由 Postgres 专家完全管理的 Postgres。适用于所有主要云提供商:Amazon AWS、Google GCP、Microsoft Azure。没有锁定,拥有完整的超级用户支持。
- 数据库实验室- 只需几分钟即可获得可用于生产的云 PostgreSQL 服务器,每月 20 美元起,备份、监控、补丁和 24/7 技术支持全部包含在内。
- DigitalOcean 托管数据库- 完全托管的 PostgreSQL 数据库。没有免费计划。起价为 15 美元/月。每日备份和时间点恢复。具有自动故障转移功能的备用节点。
- ElephantSQL - 提供从用于小型项目和概念验证的共享服务器到企业级多服务器设置的数据库。拥有最多 5 个 DB(每个 20 MB)的免费计划。
- Google Cloud SQL for PostgreSQL - 完全托管的数据库服务,可让您轻松在 Google Cloud Platform 上设置、维护、管理和管理 PostgreSQL 关系数据库。
- Heroku Postgres - 从免费到大型的计划,由 PostgreSQL 专家运营。不需要在 Heroku 上运行您的应用程序。免费计划包括 10,000 行、20 个连接、最多两个备份,并具有 PostGIS 支持。
- 渲染托管 PostgreSQL - 安全、可靠且完全不干涉的托管 PostgreSQL。所有计划均包含静态加密、自动备份和可扩展 SSD 存储。256MB RAM 和 1GB 存储空间的套餐起价为每月 7 美元(前 90 天免费)。
- Scaleway 托管数据库- 完全托管的 PostgreSQL 数据库,具有 HA、扩展和自动备份功能,托管在欧盟。每月 10 欧元起。
- Neon - 完全托管的无服务器 PostgreSQL。Neon 将存储和计算分开,为现代开发人员提供无服务器、分支、无底存储等功能。
Docker 镜像
- citusdata/citus - 带有 citus 扩展的 Citus 官方图像。基于官方 Postgres 容器。
- mdillon/postgis - Postgres 9 上的 PostGIS 2.3。基于官方 Postgres 容器。
- postgres - 官方 postgres 容器(来自 Docker)
资源
教程
- 使用 wal-e 备份和恢复 PostgreSQL 数据库- 有关使用 wal-e 在 PostgreSQL 中设置连续归档的教程。
- PG Casts - Hashrocket 每周免费播放 PostgreSQL 截屏视频。
- Postgres 指南- 旨在帮助初学者和经验丰富的用户查找特定技巧并探索 PostgreSQL 中可用工具的指南。
- PostgreSQL 练习- 通过练习轻松学习 PostgreSQL 的网站。
- tutorialspoint PostgreSQL 教程- 非常广泛的 PostgreSQL 教程集合
- postgresDBSamples - 示例 postgres 模式的集合
- PostgreSQL Primer for Busy People - PostgreSQL 中最常用命令的集合
- pg-utils - Data Egret 提供的有用的 DBA 工具
博客
- Planet PostgreSQL - PostgreSQL 的博客聚合服务。
- Andrew Dunstan 的 PostgreSQL 和技术博客
- Bruce Momjian 的 PostgreSQL 博客
- Craig Kerstiens PostgreSQL posts - 关于 PostgreSQL 酷炫功能、提示和技巧的帖子集。
- Database Soup - Josh Berkus 的博客。
- 迈克尔·帕奎尔的博客
- 罗伯特·哈斯的博客
- 从 depesz 中选择*;- 休伯特·卢巴切夫斯基的博客。
文章
- PostgreSQL 相对于其他开源 SQL 数据库的优势:第一部分
- PostgreSQL 相对于其他开源 SQL 数据库的优势:第二部分
- postgres 与 mysql 的终极博客文章
- 调试 PostgreSQL 性能,困难的方法
- 为什么使用 Postgres?
- 使用 PostgreSQL 的 COPY 命令进行超快速 CSV 导入
- 欺骗 Postgres 使用疯狂但快 200 倍的查询计划
文档
- Wiki - 用户文档、操作方法和技巧
时事通讯
- Postgres Weekly - 包含与 PostgreSQL 相关的文章、新闻和存储库的每周新闻通讯。
视频
- Citus Data Youtube 频道- Citus 相关视频
- EnterpriseDB Youtube 频道- EnterpriseDB 相关视频
- Postgres 会议 YouTube 频道- 会议视频
- 扩展 Postgres - Creston Jamison 的 Postgres 视频博客系列
社区
- 邮件列表- Postgres 的官方邮件列表,用于支持、外展等。Postgres 社区的主要沟通渠道之一。
- Reddit - 拥有超过 12000 名用户的 PostgreSQL 用户的 Reddit 社区
- Slack - 拥有超过 7000 个用户的 Postgres Slack 频道
- Telegram - 几个不同语言的 PostgreSQL 群组:俄语>4200 人,巴西葡萄牙语>2300 人,印度尼西亚语~1000 人,英语>750 人
- #postgresql on Freenode - Freenode 上关于 Postgres 的最受欢迎的 IRC 频道,拥有超过 1000 个用户
路线图
- PostgreSQL 路线图- 提供 PostgreSQL 逐步指南的路线图。