PostgreSQL
Awesome Postgres
¶
>精选的超赞清单 PostgreSQL 受启发的软件,库,工具和资源 awesome-mysql
PostgreSQL,通常只是Postgres, object-relational database (ORDBMS). PostgreSQL是 ACID-compliant 和 transactional . (看更多: wikipedia:PostgreSQL, PostgreSQL.org)
:elephant:欢迎捐助. 通过添加链接 pull requests 或创建一个 issue 开始讨论. 请看看 contribution guidelines.
High-Availability¶
- BDR -双向复制-PostgreSQL的多主复制系统
- Patroni -带ZooKeeper或etcd的PostgreSQL HA的模板.
- Stolon - PostgreSQL HA based on Consul or etcd, with Kubernetes integration.
- pglookout -复制监视和故障转移守护程序.
- repmgr -开源工具套件,用于管理PostgreSQL服务器群集中的复制和故障转移.
- Slony-I -具有级联和故障转移的“主从多个从”复制系统.
- PAF -PostgreSQL自动故障转移:基于Pacemaker和Corosync的Postgres的高可用性.
- SkyTools -复制工具,包括PgQ(排队系统)和Londiste(复制系统),其管理比Slony更为简单.
Backups¶
- Barman -2ndQuadrant提供的PostgreSQL备份和恢复管理器.
- OmniPITR -PostgreSQL的高级WAL文件管理工具.
- pg_probackup –由@PostgresPro改进的pg _arman分支,支持增量备份,副本副本备份,多线程备份和还原以及无存档命令的匿名备份.
- 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)备份.
GUI¶
- Adminer -用PHP编写的功能齐全的数据库管理工具.
- OmniDB -开源协作环境 用于数据库管理
- DataGrip -具有高级工具集和良好跨平台经验的IDE(商业软件).
- Datazenit -基于Web的PostgreSQL GUI(商业软件).
- DBeaver -具有对PostgreSQL的出色支持的Universal Database Manager.
- dbglass -使用Electron构建的PostgreSQL跨平台桌面客户端.
- Holistics -具有强大的PostgreSQL支持的在线跨平台数据库管理工具和SQL查询报告GUI(商业软件).
- JackDB -基于Web的SQL查询界面(商业软件).
- Metabase -PostgreSQL的简单仪表板,图表和查询工具.
- Numeracy -带有PostgreSQL(商业软件)图表和仪表板的快速SQL编辑器.
- pgAdmin -PostgreSQL管理和管理GUI.
- pgModeler -pgModeler是开源的PostgreSQL数据库建模器.
- pgweb -用Go编写的基于Web的PostgreSQL数据库浏览器.
- phpPgAdmin -PostgreSQL的首要基于Web的管理工具.
- Postbird -适用于macOS的PostgreSQL客户端.
- Postico -适用于macOS(商业软件)的现代PostgreSQL客户端.
- PSequel -简洁易用的界面,可快速执行常见的PostgreSQL任务(商业软件).
- SQL Tabs -用JS编写的PostgreSQL跨平台桌面客户端.
- SQLPro for Postgres -适用于macOS(商业软件)的简单,功能强大的PostgreSQL管理器.
- temBoard -基于Web的PostgreSQL GUI和监视.
- TablePlus -本机应用程序,可让您编辑数据库和结构. 确保高端安全性(商业软件).
- TeamSQL -跨平台SQL客户端:简单,轻松,可扩展.
- Valentina Studio -跨平台的数据库管理工具(免费/商业)
- PostgresCompare -跨平台的数据库比较和部署工具(商业软件).
Distributions¶
- Postgres.app -在macOS上使用PostgreSQL的最简单方法.
- PostgreSql.Binaries.Lite -PostgreSQL数据库的Windows二进制文件的最小集. 也可以通过NuGet使用.
CLI¶
- pgcli -具有自动完成功能和语法突出显示功能的Postgres CLI
- psql -内置的PostgreSQL CLI客户端
- psql2csv -在psql中运行查询并将结果输出为CSV
- nancy -Nancy CLI是一种统一的方式,可以在云或本地环境中管理自动化数据库实验
Server¶
- Postgres-XL -可伸缩的基于PostgreSQL的开源数据库集群.
- AgensGraph -基于PostgreSQL的强大图形数据库.
- Greenplum Database -PostgreSQL的开源分支,用于大数据量.
Monitoring¶
- check_pgactivity -check _pgactivity旨在监视Nagios的PostgreSQL集群. 它提供了许多选项来衡量和监视有用的性能指标.
- Check_postgres -Nagios check _postgres插件,用于检查PostgreSQL数据库的状态.
- Instrumental -实时性能监控,包括 pre-made graphs 易于设置(商业软件)
- libzbxpgsql -用于Zabbix的综合PostgreSQL监视模块.
- Pome - Pome stands for PostgreSQL Metrics. Pome is a PostgreSQL Metrics Dashboard to keep track of the health of your database.
- pg_view -开源命令行工具,可显示全局系统统计信息,每个分区的信息,内存统计信息和其他信息.
- pgwatch2 -灵活且易于上手的PostgreSQL指标监控器,专注于Grafana仪表板.
- pgbench -在PostgreSQL上进行基准测试.
- opm.io -Open PostgreSQL Monitoring是一个免费软件套件,旨在帮助您管理PostgreSQL服务器. 它可以收集统计信息,显示仪表板并在出现问题时发送警告.
Extensions¶
- Citus -可扩展的PostgreSQL集群,用于实时工作负载.
- cstore_fdw -PostgreSQL的柱状存储.
- cyanaudit -Cyan Audit逐列提供所有DML活动的数据库内日志记录.
- pglogical -提供逻辑流复制的扩展.
- 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地理空间数据库,以提供地理空间路由和其他网络分析功能.
Optimization¶
- PgHero -PostgreSQL见解变得容易.
- pgMustard -现代化的用户界面 针对“ EXPLAIN”的说明,还提供了性能提示(商业软件).
- pgtune -PostgreSQL配置向导.
- pgtune -PostgreSQL配置向导的在线版本.
- pgconfig.org -PostgreSQL在线配置工具(也基于pgtune).
- PoWA -PostgreSQL Workload Analyzer收集性能统计数据并提供实时图表,以帮助监视和调整PostgreSQL服务器.
- pg_web_stats -用于查看pg_stat_statements的Web UI.
Utilities¶
- apgdiff -比较两个数据库转储文件,并使用DDL语句创建输出,这些语句可用于将旧数据库模式更新为新数据库.
- ERAlchemy -ERAlchemy从数据库生成实体关系(ER)图.
- Hasura -任何现有或新的Postgres应用程序上的即时实时GraphQL API.
- 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导出为不同的数据格式.
- pgfutter -将CSV和JSON导入PostgreSQL的简单方法.
- PGInsight -CLI工具,可轻松深入PostgreSQL数据库.
- pg_insights -方便的SQL监视Postgres数据库运行状况.
- pgloader -使用COPY流协议将数据加载到PostgreSQL中,并使用单独的线程进行读写数据.
- pgpool-II -中间件,提供连接池,复制,负载平衡和限制超连接.
- pgsync -将PostgreSQL数据同步到本地计算机的工具.
- PGXN client -与PostgreSQL扩展网络交互的命令行工具
- postgresql-metrics -提取并提供PostgreSQL数据库指标的工具.
- PostgREST -从任何现有PostgreSQL数据库提供完全RESTful API.
- pREST -从任何PostgreSQL数据库(Golang)提供RESTful API
- PostGraphile -PostgreSQL数据库的即时GraphQL API或GraphQL模式
- yoke -具有自动故障转移和自动群集恢复功能的PostgreSQL高可用性群集.
- pglistend -一个轻量级的PostgresSQL
LISTEN
/NOTIFY
守护进程,它建立在node-postgres
之上. - ZSON -用于透明JSONB压缩的PostgreSQL扩展
- pg_bulkload -这是PostgreSQL的高速数据加载实用程序.
- pg_migrate -管理PostgreSQL代码库并简化VCS.
- sqitch -用于管理版本化架构部署的工具
- pgmigrate -Yandex开发的用于发展模式迁移的CLI工具.
- pgcmp -比较数据库模式的工具,具有接受某些持久性差异的能力
- graphql-engine -通过PostgreSQL获取即时实时GraphQL API.
- sqlcheck -自动检测常见的SQL反模式. 这种反模式通常会使查询变慢. 因此,解决这些问题将有助于加快查询速度.
- postgres-checkup -新一代的诊断工具,可让用户收集对Postgres数据库运行状况的深入分析.
Language bindings¶
普通Lisp: Postmodern * Clojure: clj-postgresql 药剂: postgrex * 走: pgx * Haskell: postgresql-simple * Java: PostgreSQL JDBC Driver * .Net / .Net核心: Npgsql 节点: node-postgres, pg-promise, pogi, slonik * Perl: DBD-Pg * PHP: Pomm, pecl/pq * Python: psycopg2 红宝石: pg 铁锈: rust-postgresql 位置: luapgsql
PaaS (PostgreSQL as a Service)¶
- Aiven PostgreSQL -PostgreSQL作为AWS,Azure,DigitalOcean,Google Cloud和UpCloud中的服务; 计划的范围从每月$ 19的单节点实例到大型的高可用性设置,免费试用两周.
- Amazon RDS for PostgreSQL -适用于PostgreSQL的Amazon Relational Database Service(RDS)
- Azure Database for PostgreSQL -PostgreSQL的Azure数据库提供了完全托管的企业就绪社区PostgreSQL数据库即服务. 它提供内置的HA,弹性扩展和与Azure生态系统的本机集成.
- Citus Cloud -生产级扩展了PostgreSQL即服务,从而支持实时工作负载并分片多租户应用程序.
- Compose -PostgreSQL作为AWS,Google Cloud Platform和IBM Cloud中的服务; 计划的价格从每月17.5美元/月的1GB存储空间扩展到12美元/ GB. 免费试用30天.
- Database Labs -数分钟之内即可获得可立即投入生产的云PostgreSQL服务器,每月20美元起,包括备份,监控,补丁和24/7全天候技术支持.
- DigitalOcean Managed Databases -完全托管的PostgreSQL数据库. 没有免费计划. 最低$ 15 /月. 具有时间点恢复功能的每日备份. 具有自动故障转移功能的备用节点.
- ElephantSQL -提供的数据库范围从小型项目的共享服务器和概念验证到企业级的多服务器设置. 有免费计划,最多可容纳5个DB,每个DB 20 MB.
- Google Cloud SQL for PostgreSQL -完全托管的数据库服务,可轻松在Google Cloud Platform上设置,维护,管理和管理PostgreSQL关系数据库. (测试版)
- Heroku Postgres -由PostgreSQL专家操作的从免费到庞大的计划. 不需要在Heroku上运行您的应用程序. 免费计划包括10,000行,20个连接,最多两个备份,并具有PostGIS支持.
Docker images¶
- citusdata/citus -具有citus扩展名的Citus官方图片. 基于官方的Postgres容器.
- mdillon/postgis -Postgres 9上的PostGIS 2.3.基于官方的Postgres容器.
- postgres -官方postgres容器(来自Docker)
Resources¶
Tutorials¶
- Backup and recover a PostgreSQL DB using wal-e -有关使用wal-e在PostgreSQL中设置连续归档的教程.
- PG Casts -Hashrocket每周提供免费的PostgreSQL屏幕录像.
- Postgres Guide -该指南旨在帮助初学者和有经验的用户找到特定的技巧并探索PostgreSQL中可用的工具.
- PostgreSQL Exercises -通过练习使学习PostgreSQL变得容易的站点.
- tutorialspoint PostgreSQL tutorial -PostgreSQL上的教程非常丰富
- postgresDBSamples -示例postgres模式的集合
- PostgreSQL Primer for Busy People -PostgreSQL中最常用的命令的集合
- pg-utils -Data Egret有用的DBA工具
Blogs¶
- Planet PostgreSQL -PostgreSQL的博客聚合服务.
- Andrew Dunstan's PostgreSQL and Technical blog
- Bruce Momjian's PostgreSQL blog
- Craig Kerstiens PostgreSQL posts -有关PostgreSQL酷功能,技巧和窍门的一组帖子.
- Database Soup -Josh Berkus的博客.
- Michael Paquier's blog
- Robert Haas' blog
- select * from depesz; -Hubert Lubaczewski的博客.
Articles¶
- What PostgreSQL has over other open source SQL databases: Part I
- Debugging PostgreSQL performance, the hard way
- Why use Postgres?
- Superfast CSV imports using PostgreSQL's COPY command
Documentation¶
- Wiki -用户文档,操作方法和提示“ n”的技巧
Newsletters¶
- Postgres Weekly -每周新闻通讯,其中包含与PostgreSQL有关的文章,新闻和回购.
Videos¶
- Citus Data Youtube channel -其他相关视频
- EnterpriseDB Youtube channel -与EnterpriseDB相关的视频
- PGConf US Youtube channel -会议视频
- Scaling Postgres -Cregre Jamison撰写的Postgres视频博客系列
Community¶
- Mailing lists -Postgres的官方邮件列表,以获取支持,扩展等信息. Postgres社区中的主要沟通渠道之一.
- Slack -Postgres的松弛渠道,拥有近5000个用户
- #postgresql on Freenode -Freenode上有关Postgres的最受欢迎的IRC频道,拥有近1000位用户
- Reddit -适用于PostgreSQL用户接近10000的reddit社区