大数跨境
0
0

PG扩展云,免翻免费解锁PG完全体

PG扩展云,免翻免费解锁PG完全体 老冯云数
2025-11-13
1
导读:开源免费免翻墙,一键安装PG与431个扩展插件 14个Linux发行版 x 6大PG主版本原生 RPM/DEB。解锁 PostgreSQL 完全体超能力。

PostgreSQL 拥有极为强大的扩展插件体系。 在 《PostgreSQL 正在吞噬数据库世界》中, 老冯已经阐述过 可扩展性 是 PostgreSQL 成功的核心要素。

PG 有 GIS 领域的事实标准 PostGIS,向量数据库瑞士军刀 pgvector,还有可以替代 ElasticSearch 的 pg_search,以及使用 DuckDB 在 PG 内进行分析的 pg_duckdb / pg_mooncake 等等。 这些扩展为 PostgreSQL 赋予了超乎想象的能力。只有加装了这些扩展,PG 才能称得上是 “全盛完全体”。

然而,要在生产环境中可靠地编译、安装这些扩展插件并非易事,会有许许多的挑战。 许多扩展仅仅提供源代码,需要自己去摸索编译。对于严肃的生产环境来说,源码编译和 Docker 镜像 往往也不是一个可行选项 —— 当你需要组合使用多个不同扩展,在不同服务器上精确安装相同版本,或者根本不想使用容器时,问题就会出现。还有一些非技术的挑战需要克服 —— 官方镜像站停止更新 ,以及国内网络环境受限导致无法下载。

 不过,这些问题都被老冯一一攻克了!经过最近两三年无数日夜的努力,我很自豪地向大家介绍 PGEXT.CLOUD —— PG扩展云,一次性, 一条龙,一步到位解决用户安装扩展,开发者分发扩展,厂商交付扩展的难题。

PGEXT.CLOUD

PG 扩展云(PGEXT.CLOUD)提供了以下三样基础设施,帮助用户更好的利用 PostgreSQL 扩展生态系统的协同超能力:

这几条看似简单的命令背后,其实隐藏了巨大的复杂度与工作量。 支持 14 个 Linux 发行版、6 个 PG 主版本、431 个扩展插件所产生的排列组合,是一个近乎天文数字的挑战。

 而在实现“丝滑”安装交付的过程中,还伴随着各种棘手问题 —— 庞大的数量,驳杂的质量,分发的限制,心智的负担。 好在这些挑战现在都有了一个不错的答案。

无可比拟的数量

PostgreSQL 生态中拥有数量庞大的扩展,总数可能超过 1000 个。然而在官方 PGDG 仓库中,目前只提供了其中约 一百多 个扩展。 诚然,一些耳熟能详的插件(如 PostGIS、pgvector 等)包含在官方仓库里,但还有许多强大的扩展并未被收录 —— 例如近期炙手可热的 DuckDB-PG 融合扩展 pg_duckdb 和 pg_mooncake。老牌的 Plv8,还有 Supabase 自建所需的一系列 Rust 扩展。


官方仓库不收录这些扩展有许许多多的原因 —— 比如 YUM 仓库的维护者 Devrim 就表示,绝对不会让 Rust 写的 PG 扩展进入仓库中。 而像 plv8,pg_duckdb 这样一编译一个小时的扩展巨无霸,毫无疑问也会显著拉高仓库维护的成本,所以老冯也完全能理解。


老冯曾经寄希望于 Tembo 的包管理器 trunk,或者 pgxman 之类的东西可以解决这些问题,不过似乎最后还是不自己动手上。 (比如 tembo 就已经跑路去干 AI DBA 去了)。而这一干就一发不可收拾,一下子就干成了 PG 生态里最大的扩展目录与仓库。

简单来说,这个扩展目录目前收录了 431 个扩展,抛开 PG 自带的 71 个扩展总共 360 个。 PGDG 官方仓库维护了 144 个 EL 扩展和 105 个 Debian 扩展,而老冯的 PGSTY 维护了 260 个 EL 扩展与 241 个 Debian 扩展, 占到了总数的 72% 左右,哈哈,这可真是以一己之力撑起了大半边天。


良莠不齐的质量

当然,光有数量是不行的,更重要的是质量。PGDG 的 YUM 仓库有许许多多的 “坑”: 某个发行版和 PG 的组合可能漏掉了,不同 PG 大版本的扩展版本不一致,老冯在这里可没有少给 PGDG 仓库擦屁股。

更大的问题在于部分扩展缺乏及时维护。当 PostgreSQL 推出 16、17、18 等新版本时,一些扩展因为无人更新而无法兼容新版本,甚至直接导致崩溃。 这两年来,老冯修复了近百个“趴窝”的扩展。例如,最近几乎所有重要的 Rust PG 扩展,在老冯的推动下都已升级到最新的 pgrx 0.16.1 框架,并支持 PG 18。


可以说,目前目录里的这些扩展,即使原作者弃坑不干了,老冯也有信心接手维护,持续为新版本保驾护航。 当然,确实有极个别规模太大,难以抢救且作者失联的扩展,老冯也只能无奈摊手(age,hydra)。

也许你会好奇,老冯一个人是怎么维护这么多扩展的?说起来,这还真是多亏了 Claude Code。 Opus 4.1 干这个可真是一把好手,通常我只要念出正确的咒语,然后 Review 一下,大部分情况下问题就迎刃而解了,哈哈!

如何分发扩展

光解决扩展的编译打包还不够,如何高效地将扩展分发到用户手中,同样面临诸多挑战。 首先需要维护一个 APT 仓库和一个 YUM 仓库,确保不同系统的用户都能方便获取软件包。 PGEXT.CLOUD 默认通过 Cloudflare 提供全球 CDN 加速,但 Cloudflare 在中国大陆访问缓慢,因此我们专门搭建了位于国内的镜像站来提供高速下载。

虽然,打包构建是一项相对冷门稀缺的技能,但建立自有仓库镜像并不是最棘手的问题。 更大的难题在于:除了 Pigsty 自己的扩展仓库镜像,俺还需要维护 PostgreSQL 官方 PGDG 仓库的国内镜像!

在我之前的文章 从PG“断供”看软件供应链中的信任问题 和 卡脖子:PostgreSQL切断镜像站同步通道 中, 我曾提到:PostgreSQL 官方 PGDG 仓库自今年5月起停止了 ftp/rsync 同步通道,这导致全球范围内的大部分镜像站从那时起就不再更新了。 

对于海外用户来说影响尚不明显,但对于中国大陆用户而言,这意味着如果不翻墙就无法获取 PG 的最新软件包。 大家常用的阿里云、清华 TUNA 镜像源目前都停留在 2025-03-31 的版本,仓库连今年 9 月发布的 PG 18 都影子无踪。

目前,能持续更新 PGDG 仓库镜像的我所知道也就只有老冯维护的 Pigsty、俄罗斯的 Yandex,以及欧洲 Xtom。 我每周都会手动同步上游 PGDG 仓库,确保国内用户也能拿到最新的更新。 顺带一提,老冯还在 PGDG 镜像里帮 PGDG YUM 仓库修复了一些陈年旧 bug(比如 patroni 3.0.4 这个钉子户版本)。

总而言之,如今只要你使用主流 Linux 发行版,无论身在国内还是海外,都可以通过 PGEXT.CLOUD 享受丝滑顺畅的 PostgreSQL 及其扩展安装体验,再也不用为网络和环境问题操心。

PG扩展维基百科

扩展插件如此众多,对于普通用户来说,安装使用时难免会被各种配置、源站、镜像等细节搞得头大。 许多初学者只是想用上 PostgreSQL 及其扩展,这些繁琐细节实在没必要成为绊脚石。 这正是老冯在仓库之外,又额外提供 扩展目录 和 包管理器工具 两项服务的原因。

PGEXT.CLOUD 的扩展目录(即通过 https://pgext.cloud[1] 访问的网页),汇集了前述 431 个扩展的详细信息。 我们为每个扩展整理了元数据、在各操作系统和 PG 版本上的可用性矩阵,以及完整的安装、配置与加载使用说明。


我们还按功能、许可证、开发语言等多个维度对扩展进行分类索引。一些重要扩展甚至配有专门的说明章节和教程。PGEXT.CLOUD 的目标很明确 —— 打造 PostgreSQL 扩展界的维基百科,让用户对可用的扩展“一览无余”,也为开发者提供展示自己作品的平台。

简单易用命令行

当然,更令人兴奋的是,我们还提供了简单易用的命令行工具 pig。这个用 Go 语言编写的小巧工具(仅 4 MB),将 PostgreSQL 的安装和扩展交付过程简化到了极致。

例如,只需下面三行命令,就可以分别完成下载 pig、配置仓库以及安装 PG 内核和扩展插件:

curl -fsSL https://repo.pigsty.io/pig | bash
pig repo set
pig install -y -v 18 pgsql postgis pg_duckdb 

无论您使用的是哪种 Linux 发行版,配置了什么软件源,所处地域网络如何,使用 dnf/yum 还是 apt,这个工具都能替您处理好所有细节。

值得一提的是,pig 并非另起炉灶造轮子,而是对现有 Linux 包管理器的“一层薄皮封装”(PiggyBack)。 换言之,您依然可以使用经典的 apt/yum 来直接访问 PGEXT.CLOUD 的软件仓库 —— pig 只是让这一切变得更简单,但并不是不可替代的强制依赖,更不会引入任何供应商锁定。

它不关心你运行在什么 Linux 上,配置了什么仓库,在什么区域,用的是 dnf ,yum,还是 apt,它可以帮助你处理好所有细节。

最重要的是,这个 pig 包管理器并非是什么新发明的土鳖轮子,而是 PiggyBack (依托)于现有 Linux 包管理器的上层抽象。 这意味着你还是可以直接用经典的 apt / yum 方式直接访问仓库 —— pig 并非必须,不会引入任何供应商锁定。

开源、供应链与信任

此前有些国外用户对老冯表示过顾虑:“你是中国人,你搞的这个仓库看上去很好,但我们怎么知道没被你偷偷做手脚呢?” 面对这样的质疑,老冯也被噎过。说到底,这是典型的软件供应链信任问题。坦白讲,没有绝对的解决办法。 即便是 PGDG 官方仓库,比如其 YUM 仓库,也是凭借维护者 Devrim 的个人声誉来背书运转的。

老冯的回答是,构建这些二进制产物的所有工具,规范,文档,细节都是开源的,你自己也可以在本地轻松的自己构建出这些扩展来。 这样如果你不放心,完全可以用同样的工具箱在离线情况下直接构建自己的 RPM/DEB 仓库。


例如,你只需要使用下面这个简单的 Dockerfile,就可以立刻拉起标准构建环境,然后当你想要构建扩展的时候,只需要使用 pig build pkg 命令,就可以了!

是的就是这么简单,比如你想要编译 timescaledb,这条命令会自动下载源代码,安装依赖,然后生成 deb 和 rpm 包:


目前 PGEXT.CLOUD 收录的所有扩展包,都是通过上述流程构建而成 —— 这意味着您也可以在任何支持的平台上,轻松从源代码构建出同样的扩展包!


目前的进展

PGEXT.CLOUD 其实并不算是 “新项目”,这套仓库基础设施已经运转五年了,包管理器和扩展目录有两年了。 这个新版本的网站目录倒确实是最近一个月新搞出来了的。所以从成熟度上来说,是已经“久经考验”,没啥问题的。

目前,这个仓库完全开源并免费向公众提供服务。托赛博佛祖 Cloudflare 慷慨免费套餐的福,最大的流量开销得以减免; 至于国内服务器托管,每月几百块的流量费,这点钱老冯还是掏的起的,哈哈。

老冯承诺会长期维护这个仓库。毕竟,这本来就是 Pigsty PostgreSQL 发行版自身需要的一部分,我也乐于将这份成果回馈社区。 我注意到,不少用户乃至业内同行其实只想方便地安装 PG 和各种扩展,所以我选择将 pig 工具和 PGEXT.CLOUD 仓库从 Pigsty 项目中抽离出来, 作为以 Apache 2.0 宽松许可证开源的独立项目服务大众。

有人问我,难道扩展不是 Pigsty 的一个核心价值点与壁垒吗?你就这么开源免费给别人白嫖打白工图啥呢? 老冯的观点是 —— 一流的企业与开发者就应该去构建生态来让所有参与者都能互惠共赢。


这一举措也已经初见成效。例如,业内同行 Omnigres 和 Autobase 在他们的 PostgreSQL 发行版中引入了这个扩展仓库,不费吹灰之力就让他们的发行版与用户获得了 431 个 PG 扩展的强大能力。 再比如,一些扩展开发厂商(ParadeDB、TensorChord、MooncakeLab 等)也能够借助 Pigsty 仓库,轻松将自己的扩展作品分发给全球用户。


不仅如此,我们的仓库还收录并分发了多款不同风味的 PostgreSQL 内核分支[2] —— 从瀚高的 IvorySQL、阿里云的 PolarDB、Supabase 的 OrioleDB、Percona 的 TDE 内核, 到易景科技的 openHalo(mysql兼容)等,都可以通过这个仓库一键安装启用。 可以说,PGEXT.CLOUD 不仅服务于扩展作者和使用者,同样助力各路 PG 厂商为用户创造价值。

放眼未来

目前在 PostgreSQL 扩展这条赛道上,除了老冯的 pig 项目可谓高歌猛进之外, 其他方案似乎也没声了:原本声势浩大的 Tembo Cloud 也跑去凑 AI 的热闹,弃坑不干,还坑了 PGXN 作者 David 一把; pgxman、pgxn 等也都一直不温不火,没有什么进展。

真正还能在容器化场景下提供扩展分发能力、与我们一较高下的,大概只有欧盟 StackGres(Alvaro 提供的 Kubernetes 方案)。 不过 StackGres 走的是 Cloud-Native 路线,而老冯专注的是 Linux-Native,本就是井水不犯河水,各取所需。

顺带一提,Pigsty 和 StackGres 还是 Supabase 官方唯二两个支持三方开源自建 Supabase 的发行版,也是一个 K8S, 一个 Linux。 就是因为也只有我们两家把 Supabase 的核心 —— 扩展问题给解决好了。


PostgreSQL 的成功离不开其极致的可扩展性和繁荣的扩展生态。 老冯真心希望通过 PGEXT.CLOUD 为这个生态添砖加瓦,树立起扩展分发的事实标准,让扩展作者、用户以及 PG 厂商都能享受到更多增值红利,拥有更卓越的使用体验。

作为一个完全开源的项目,PGEXT.CLOUD 热忱欢迎来自各方的贡献!如果您发现还有哪些扩展遗漏未收录, 或者在使用过程中遇到任何问题,欢迎随时提出 Issue。作为扩展作者,如果您因缺少跨平台打包分发能力而烦恼,老冯也很乐意帮您解决这些难题; 作为 PG 产品厂商,我们更鼓励您直接采用 PGEXT.CLOUD 的仓库与工具,将 PostgreSQL 丰富的扩展生态无缝交付给用户。

写到这里,不禁有些感慨——从个人兴趣的小项目,到如今服务全球 PG 社区的一项基础设施,PGEXT.CLOUD 的成长离不开每一位开源同行的支持。 未来,老冯将继续保持初心,与大家携手推动 PostgreSQL 生态更上一层楼!让我们共同解锁 PG 生态的全部潜力,畅想更加精彩的数据库未来!

专栏:数据库老司机


尝鲜须谨慎:PG新存储引擎故障案例

阿里云"借用"Supabase:开源与云的灰色地带

月饼好吃:又一家PG扩展公司被Databricks收购

WinStudio,一万块在本地跑200B大模型?

冷门但稀缺的技能:打包构建

从PG“断供”看软件供应链中的信任问题

Postgres主宰数据库世界,而谁来吞噬PG?

PostgreSQL已主宰数据库世界

懂车帝暴打智驾,懂云帝在哪里

Pigsty v3.6:全能PG发行版的关键一步

AMD YES? 老冯的数码退烧记

Google AI工具箱:生产级数据库MCP来了?

卡脖子:PostgreSQL切断镜像站同步通道

分道扬镳:bcachefs作者对Linus口吐芬芳

Pigsty:喜提上海开源创新菁英奖

AI时代的数据库与DBA将何去何从

PostgreSQL高峰论坛:参会小记

Pigsty v3.5 发布,4K Star,Supabase自建优化

软件3.0时代,AI带来的范式转移

数据库老司机勇闯现代前端大观园

别争了,AI时代数据库已经尘埃落定

笔记本进酱油,脑子瓦特了

开放数据标准:Postgres,OTel,与Iceberg

小数据的失落十年:分布式分析的错付

OpenAI:将PostgreSQL伸缩至新阶段

不缺好数据库内核,缺能用好数据库的DBA

PGCon.dev闪电演讲,硬控PG大佬5分钟

数据库茶水间:OpenAI拟收购Supabase ?

这次数据库真爆炸了,但摇人也没用了

数据库爆炸了怎么摇人?

PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG

影视飓风达芬奇千万级数据库演化及实践

SaaS已死?AI时代,软件从数据库开始

分布式数据库是伪需求

兼容Oracle的开源 PostgreSQL?

2025年:MySQL vs PostgreSQL

PG被黑慢MySQL 360倍,这次我真忍不了

Claude Code泄密:MCP 爆火的隐藏真相

PG扩展峰会日程出炉,蒙特利尔见

OrioleDB 奥利奥数据库来了!

带有MySQL兼容的PG内核现已加入Pigsty

PGFS:将数据库作为文件系统

数据库火星撞地球:当PG爱上DuckDB

HTAP数据库,一场无人鼓掌的演出

阿里云rds_duckdb:致敬还是抄袭?

PostgreSQL取得对MySQL的压倒性优势

国产数据库里有能打的吗?

对比Oracle与PostgreSQL事务系统

如何在数据库中直接检索PDF

Wiz: DeepSeek数据库暴露

PostgreSQL 生态前沿进展

数据库即架构

网传江西教育厅高考查分网站删库跑路

PostgreSQL荣获2024年度数据库(5冠王)

PII数据安全合规与PG Anonymizer最佳实践

第七届PG生态大会:一些感想

Andy Pavlo: 2024年度数据库回顾

Pigsty@2024:今年没啥财运,但事儿整的还不赖

小猪骑大象:PG内核与扩展包管理神器

PostgreSQL 2024 社区现状调查报告

七周七数据库 @ 2025

你为什么不用连接池?

创业出海神器 Supabase 自建指南

面向未来数据库的现代硬件

这么吹国产数据库,听的尴尬癌都要犯了

20刀好兄弟PolarDB:论数据库该卖什么价?

不要更新!发布当日叫停:PG也躲不过大翻车

PostgreSQL 12 过保,PG 17 上位

PZ:MySQL还有机会赶上PostgreSQL的势头吗?

PostgreSQL神功大成!最全扩展仓库

YC教父Paul Graham:写作者与非写作者

开源皇帝Linus清洗整风

第二批数据库国测名单:国产化来了怎么办?

PostgreSQL 17 发布:摊牌了,我不装了!

PG系创业公司Supabase:$80M C轮融资

先优化碳基BIO核,再优化硅基CPU核

PostgreSQL 17 RC1 发布!与近期PG新闻

MongoDB没有未来:“好营销”救不了烂芒果

《黑历史:Mongo》:现由PostgreSQL驱动

PostgreSQL可以替换微软SQL Server吗?

ElasticSearch又重新开源了???

GOTC 2024 BTW采访冯若航:Pigsty作者,简化PG管理,推动PG开源社区的中国参与

谁整合好DuckDB,谁赢得OLAP数据库世界

PostgreSQL小版本更新,17beta3,12将EOL

PG隆中对,一个PG三个核,一个好汉三百个帮

最近在憋大招,数据库全能王真的要来了

ClickHouse收购PeerDB:这浓眉大眼的也要来搞 PG 了?

StackOverflow 2024调研:PostgreSQL已经超神了

机场出租车恶性循环与国产数据库怪圈

MySQL新版恶性Bug,表太多就崩给你看!

MySQL安魂九霄,PostgreSQL驶向云外

CentOS 7过保了,换什么OS发行版更好?

用PG的开发者,年薪比MySQL多赚四成?

Oracle最终还是杀死了MySQL!

MySQL性能越来越差,Sakila将何去何从?

让PG停摆一周的大会:PGCon.Dev参会记

PGCon.Dev 2024 温哥华扩展生态峰会小记

PostgreSQL 17 Beta1 发布!牙膏管挤爆了!

为什么PostgreSQL是未来数据的基石?

国产数据库到底能不能打?

PostgreSQL 主要贡献者 Simon Riggs 因坠机去世

Redis不开源是“开源”之耻,更是公有云之耻

PostgreSQL会修改开源许可证吗?

PostgreSQL is eating the database world

RDS阉掉了PostgreSQL的灵魂

PostgreSQL正在吞噬数据库世界

技术极简主义:一切皆用Postgres

PG生态新玩家ParadeDB

DBA会被云淘汰吗?

快速掌握PostgreSQL版本新特性

令人惊叹的PostgreSQL可伸缩性

国产数据库是大炼钢铁吗?

中国对PostgreSQL的贡献约等于零吗?

展望PostgreSQL的2024 (Jonathan Katz)

2023年度数据库:PostgreSQL (DB-Engine)

2023总结:三十而立

MySQL的正确性为何如此拉垮?

数据库应该放入K8S里吗?

把数据库放入Docker是一个好主意吗?

向量数据库凉了吗?

重新拿回计算机硬件的红利

数据库真被卡脖子了吗?

PG查询优化:观宏之道

EL系操作系统发行版哪家强?

FerretDB:假扮成MongoDB的PostgreSQL?

如何用 pg_filedump 抢救数据?

PGSQL x Pigsty: 数据库全能王来了

PG先写脏页还是先写WAL?

冯若航:不想当段子手的技术狂,不是一位好的开源创始人

基础软件到底需要什么样的自主可控?

如何看待 MySQL vs PGSQL 直播闹剧

驳《MySQL:这个星球最成功的数据库》

向量是新的JSON

ISD数据集:分析全球120年气候变化

AI大模型与向量数据库 PGVECTOR

技术反思录:正本清源 之 序章

微服务是不是个蠢主意?

分布式数据库是伪需求吗?

AI 会有自我意识吗?

数据库需求层次金字塔

驳《再论为什么你不应该招DBA》

云数据库是不是杀猪盘

云数据库是不是智商税

PostgreSQL 到底有多强?

为什么PostgreSQL是最成功的数据库?

90后,辞职创业,说要卷死云数据库

StackOverflow 2022数据库年度调查

云RDS:从删库到跑路

DBA还是一份好工作吗?

为什么说PostgreSQL前途无量?




【声明】内容源于网络
0
0
老冯云数
云计算泥石流,数据库老司机。
内容 402
粉丝 0
老冯云数 云计算泥石流,数据库老司机。
总阅读27
粉丝0
内容402