跳转到主要内容

标签: sty

  • 把 Pigsty 控制节点引导设计成可恢复事务

    冯若航 发布于 设计

    冯若航styrepoinstall

    把 Pigsty 控制节点引导设计成可恢复事务

    决策日期: 2026-08-14 状态: 已实现并随 pig v1.8.0 发布。 当前参考: pig sty boot 范围: 准备 Pigsty 控制节点及其软件来源,不包括部署数据库集群。 决策 pig sty boot 应当是一套原生、能够处理失败的控制节点引导工作流。 它在提权前解析显式来源,准备在线或离线仓库,只安装必要的控制节点软件包,证明 Ansible 真正可用, 并执行有边界的收尾检查。 仓库替换具有事务语义:软件包准备失败时恢复原有仓库定义。 可选便利功能可以告警,但无效 …

    决策日期: 2026-08-14 状态: 已实现并随 pig v1.8.0 发布。 当前参考: pig sty boot 范围: 准备 Pigsty 控制节点及其软件来源,不包括部署数据库集群。 决策 pig sty boot 应当是一套原生、能够处理失败的控制节点引导工作流。 它在提权前解析显式来源,准备在线或离线仓库,只安装必要的控制节点软件包,证明 Ansible 真正可用, 并执行有边界的收尾检查。 仓库替换具有事务语义:软件包准备失败时恢复原有仓库定义。 可选便利功能可以告警,但无效 …

  • pig v1.8.0

    冯若航 发布于 发布

    冯若航styrepoinventorycatalog

    pig v1.8.0

    Pig v1.8.0 将 Pigsty 控制节点的准备过程原生化。两条核心安装命令 pig sty boot 与 pig sty conf 现在是具备完整失败处理能力的 Go 工作流, 不再包装旧版 bootstrap 与 configure Shell 脚本。本版本继续以 575 个已打包 PostgreSQL 扩展 作为统一发布口径,内置 Pigsty 4.5.0。 原生 pig sty boot pig sty boot 现在是一套具备事务语义与完整失败处理的原生控制节点引导流程。它不再执 …

    Pig v1.8.0 将 Pigsty 控制节点的准备过程原生化。两条核心安装命令 pig sty boot 与 pig sty conf 现在是具备完整失败处理能力的 Go 工作流, 不再包装旧版 bootstrap 与 configure Shell 脚本。本版本继续以 575 个已打包 PostgreSQL 扩展 作为统一发布口径,内置 Pigsty 4.5.0。 原生 pig sty boot pig sty boot 现在是一套具备事务语义与完整失败处理的原生控制节点引导流程。它不再执 …

  • PIG 2.0 产品方向:一份提案,而不是发布契约

    冯若航 发布于 设计

    冯若航clistycatalog

    PIG 2.0 产品方向:一份提案,而不是发布契约

    决策日期: 2026-08-13 状态: 等待 owner 审议的提案;尚未实现,也不是 PIG 2.0 发布承诺。 当前参考: PIG 文档与当前 v1.8.1 发布 范围: 未来 PIG 2.0 / Pigsty 5.0 的候选产品边界与验证门槛。 决策 提案方向是让 PIG 成为从空白控制节点到经过校验、可以部署的 Pigsty Inventory 的稳定初始化前门。 PIG 拥有 Catalog 选择、解析、计划、有边界的执行编排、结构化结果与脱敏 receipt; 软件包事务、配置应 …

    决策日期: 2026-08-13 状态: 等待 owner 审议的提案;尚未实现,也不是 PIG 2.0 发布承诺。 当前参考: PIG 文档与当前 v1.8.1 发布 范围: 未来 PIG 2.0 / Pigsty 5.0 的候选产品边界与验证门槛。 决策 提案方向是让 PIG 成为从空白控制节点到经过校验、可以部署的 Pigsty Inventory 的稳定初始化前门。 PIG 拥有 Catalog 选择、解析、计划、有边界的执行编排、结构化结果与脱敏 receipt; 软件包事务、配置应 …

  • pig v1.6.2

    冯若航 发布于 发布

    冯若航catalogrepoextsty

    pig v1.6.2

    Pig v1.6.2 是 v1.6.1 之上的功能与目录更新版本:已打包扩展从 562 个增加到 572 个,新增 Grafana 仪表盘 schema v2 原生支持,并改进本地软件仓库生成流程。内置 Pigsty 版本继续锁定为 4.5.0。 主要变化 pig sty grafana 现在同时支持传统仪表盘 JSON 与原生 dashboard.grafana.app/v2 Dashboard 资源。载入 v2 仪表盘时使用 Grafana resource API,确保标签页与 …

    Pig v1.6.2 是 v1.6.1 之上的功能与目录更新版本:已打包扩展从 562 个增加到 572 个,新增 Grafana 仪表盘 schema v2 原生支持,并改进本地软件仓库生成流程。内置 Pigsty 版本继续锁定为 4.5.0。 主要变化 pig sty grafana 现在同时支持传统仪表盘 JSON 与原生 dashboard.grafana.app/v2 Dashboard 资源。载入 v2 仪表盘时使用 Grafana resource API,确保标签页与 …

  • 用有边界的 Grafana 客户端替代仪表盘脚本

    冯若航 发布于 设计

    冯若航sty

    用有边界的 Grafana 客户端替代仪表盘脚本

    决策日期: 2026-07-18 状态: v1.6.0 实现;Grafana dashboard schema v2 支持随后在 v1.6.2 交付。 当前参考: pig sty grafana 范围: Pigsty 拥有的仪表盘目录、仪表盘与界面偏好;不是通用 Grafana provisioning。 决策 PIG 应通过有边界的原生 HTTP 客户端管理 Pigsty 随附的 Grafana 资产。 它可以检查就绪状态、列出托管资产、装载或初始化仪表盘、导出仪表盘、只清理自己拥有的资产, …

    决策日期: 2026-07-18 状态: v1.6.0 实现;Grafana dashboard schema v2 支持随后在 v1.6.2 交付。 当前参考: pig sty grafana 范围: Pigsty 拥有的仪表盘目录、仪表盘与界面偏好;不是通用 Grafana provisioning。 决策 PIG 应通过有边界的原生 HTTP 客户端管理 Pigsty 随附的 Grafana 资产。 它可以检查就绪状态、列出托管资产、装载或初始化仪表盘、导出仪表盘、只清理自己拥有的资产, …

  • 复用 Pigsty 已经拥有的 CMDB

    冯若航 发布于 设计

    冯若航inventorysty

    复用 Pigsty 已经拥有的 CMDB

    决策日期: 2026-07-18 状态: 全新 revision store 已被取代;复用既有 CMDB 的薄适配器已经实现,但仍为实验功能。 当前参考: pig inventory cmdb 范围: 与 Pigsty 既有 CMDB 交换声明,而不是再设计一个配置数据库。 决策 PIG 必须复用 Pigsty 已经提供的 CMDB。它的职责是有边界的适配:校验静态 Inventory, 将声明装载到既有表中,导出既有投影,检查一致性,并安全切换 Ansible 的静态与动态数据源。 PIG …

    决策日期: 2026-07-18 状态: 全新 revision store 已被取代;复用既有 CMDB 的薄适配器已经实现,但仍为实验功能。 当前参考: pig inventory cmdb 范围: 与 Pigsty 既有 CMDB 交换声明,而不是再设计一个配置数据库。 决策 PIG 必须复用 Pigsty 已经提供的 CMDB。它的职责是有边界的适配:校验静态 Inventory, 将声明装载到既有表中,导出既有投影,检查一致性,并安全切换 Ansible 的静态与动态数据源。 PIG …

  • 编辑声明,保留文档:无损 Pigsty Inventory

    冯若航 发布于 设计

    冯若航inventorysty

    编辑声明,保留文档:无损 Pigsty Inventory

    决策日期: 2026-07-18 状态: 已实现并随 pig v1.6.0 发布。 当前参考: pig inventory 范围: 静态 Pigsty Inventory 的查看、局部编辑、校验、比较与安全写入。 决策 PIG 同时把 pigsty.yml 视为语义声明和人工维护的源文档。语义解析器负责判断 Inventory 的含义, 原始字节则决定它的书写方式。局部编辑只替换有边界的源范围,并在原子写入前重新解析完整候选文件。 这样可以避免 YAML 工具常见的失败模式:逻辑上正确的一次编 …

    决策日期: 2026-07-18 状态: 已实现并随 pig v1.6.0 发布。 当前参考: pig inventory 范围: 静态 Pigsty Inventory 的查看、局部编辑、校验、比较与安全写入。 决策 PIG 同时把 pigsty.yml 视为语义声明和人工维护的源文档。语义解析器负责判断 Inventory 的含义, 原始字节则决定它的书写方式。局部编辑只替换有边界的源范围,并在原子写入前重新解析完整候选文件。 这样可以避免 YAML 工具常见的失败模式:逻辑上正确的一次编 …

  • 瞬间克隆 PostgreSQL 数据库,无需黑魔法

    冯若航 发布于 文章

    冯若航postgresclisty

    瞬间克隆 PostgreSQL 数据库,无需黑魔法

    老冯在半年前(2026-01-08)写过一篇文章《Git for Data:瞬间克隆 PG 数据库与实例》,介绍了 PostgreSQL 18 和 Pigsty v4.0 的一个新特性:瞬间克隆新数据库。利用文件系统 CoW 机制,以及 PG 18 的 file_copy_method = clone 新参数,可以在秒级克隆一个非常大的数据库,而且不占用额外的存储。 这玩意儿其实非常适合 AI Agent 使用。我在《Agent 需要什么样的数据库》里提到过:极低成本的数据库克隆对于反事实推演至 …

    老冯在半年前(2026-01-08)写过一篇文章《Git for Data:瞬间克隆 PG 数据库与实例》,介绍了 PostgreSQL 18 和 Pigsty v4.0 的一个新特性:瞬间克隆新数据库。利用文件系统 CoW 机制,以及 PG 18 的 file_copy_method = clone 新参数,可以在秒级克隆一个非常大的数据库,而且不占用额外的存储。 这玩意儿其实非常适合 AI Agent 使用。我在《Agent 需要什么样的数据库》里提到过:极低成本的数据库克隆对于反事实推演至 …

  • 什么是 PostgreSQL 发行版?

    冯若航 发布于 文章

    冯若航postgresrepoextsty

    什么是 PostgreSQL 发行版?

    经常有人问我:Pigsty 到底是什么?我通常回答:PostgreSQL 发行版。 通常下一个问题就是:那 “PostgreSQL 发行版” 又是什么? 这是个好问题。而要把它讲清楚,最好的切入点不是数据库,而是操作系统。 一、从 Linux 与操作系统发行版说起 说起 Distribution(发行版),绝大多数人第一反应都是 Linux 发行版 —— Red Hat、Debian、Ubuntu、SUSE、Arch…… 但问题是:既然已经有 Linux,为什么还需要 Linux 发行版?两者到 …

    经常有人问我:Pigsty 到底是什么?我通常回答:PostgreSQL 发行版。 通常下一个问题就是:那 “PostgreSQL 发行版” 又是什么? 这是个好问题。而要把它讲清楚,最好的切入点不是数据库,而是操作系统。 一、从 Linux 与操作系统发行版说起 说起 Distribution(发行版),绝大多数人第一反应都是 Linux 发行版 —— Red Hat、Debian、Ubuntu、SUSE、Arch…… 但问题是:既然已经有 Linux,为什么还需要 Linux 发行版?两者到 …

  • pig v1.4.2

    冯若航 发布于 发布

    冯若航patronibuildcatalogsty

    pig v1.4.2

    内置扩展目录从 510 个可用扩展刷新到 524 个,新增 14 个扩展:pg_stl、pgmnemo、psql_bm25s、pg_orca、pg_sorted_heap、graph、pgrdf、fsm_core、jsonschema、pg_durable、pg_mockable、pg_uuid_v8、pg_stat_backtrace、pg_projection。 更新 48 个已有扩展的软件包元数据,包括 timescaledb 2.28.0、timescaledb_toolkit …

    内置扩展目录从 510 个可用扩展刷新到 524 个,新增 14 个扩展:pg_stl、pgmnemo、psql_bm25s、pg_orca、pg_sorted_heap、graph、pgrdf、fsm_core、jsonschema、pg_durable、pg_mockable、pg_uuid_v8、pg_stat_backtrace、pg_projection。 更新 48 个已有扩展的软件包元数据,包括 timescaledb 2.28.0、timescaledb_toolkit …

  • pig v1.2.0

    冯若航 发布于 发布

    冯若航repostycatalogcli

    pig v1.2.0

    扩展目录与别名解析增强: 引入动态 PG 分类别名解析,按 PG 主版本选择别名映射。 引入 OS 维度别名覆盖(ansible/bootstrap),并在未知发行版回退中收敛为 PGDG-only。 新增 node/infra、babelfish/cloudberry 等别名并更新扩展元数据,减少包解析歧义。 高风险操作计划预览: 新增 pig install --plan,支持结构化执行计划输出。 统一 pig pitr 与 pgBackRest repack/expire 的计划预览语义 …

    扩展目录与别名解析增强: 引入动态 PG 分类别名解析,按 PG 主版本选择别名映射。 引入 OS 维度别名覆盖(ansible/bootstrap),并在未知发行版回退中收敛为 PGDG-only。 新增 node/infra、babelfish/cloudberry 等别名并更新扩展元数据,减少包解析歧义。 高风险操作计划预览: 新增 pig install --plan,支持结构化执行计划输出。 统一 pig pitr 与 pgBackRest repack/expire 的计划预览语义 …

  • 先编译和校验,再提交:原生 sty conf 流水线

    冯若航 发布于 设计

    冯若航styinventory

    先编译和校验,再提交:原生 sty conf 流水线

    决策日期: 2026-02-18;生产契约于 2026-08-14 定稿。 状态: 已实现并随 pig v1.8.0 发布。 当前参考: pig sty conf 范围: 从受信 Pigsty 模板生成一份经过校验的静态 Inventory,不是任意 YAML 转换器。 决策 pig sty conf 应当像一台小型编译器:解析一个安全模板,读取结构,应用一组有边界的结构化变更, 校验完整候选文件,并且只在所有必要阶段成功后原子提交输出。 命令不调用旧 configure 脚本,也不回退到原始 …

    决策日期: 2026-02-18;生产契约于 2026-08-14 定稿。 状态: 已实现并随 pig v1.8.0 发布。 当前参考: pig sty conf 范围: 从受信 Pigsty 模板生成一份经过校验的静态 Inventory,不是任意 YAML 转换器。 决策 pig sty conf 应当像一台小型编译器:解析一个安全模板,读取结构,应用一组有边界的结构化变更, 校验完整候选文件,并且只在所有必要阶段成功后原子提交输出。 命令不调用旧 configure 脚本,也不回退到原始 …

  • pig v1.1.1

    冯若航 发布于 发布

    冯若航reposty

    pig v1.1.1

    修复 在迁移构建目录时保留符号链接语义,并支持跨文件系统移动。 正确处理被配置为文件系统根目录的 PostgreSQL 日志目录,防止解析到预期目录之外的文件。 允许 pig repo rm 删除名称中带点号的仓库模块,同时保留安全路径校验。 pig sty init 解压 Pigsty 发布包时允许安全的相对符号链接。 校验和 复制全部校验和 下载资产 文件校验和 pig-1.1.1-1.aarch64.rpm Linuxarm64SHA-256 22fe5e95…7429 …

    修复 在迁移构建目录时保留符号链接语义,并支持跨文件系统移动。 正确处理被配置为文件系统根目录的 PostgreSQL 日志目录,防止解析到预期目录之外的文件。 允许 pig repo rm 删除名称中带点号的仓库模块,同时保留安全路径校验。 pig sty init 解压 Pigsty 发布包时允许安全的相对符号链接。 校验和 复制全部校验和 下载资产 文件校验和 pig-1.1.1-1.aarch64.rpm Linuxarm64SHA-256 22fe5e95…7429 …

  • pig v0.9.0

    冯若航 发布于 发布

    冯若航styext

    pig v0.9.0

    变更 将 pig sty install 重命名为 pig sty deploy,使命令名称准确表达其执行 Pigsty 部署 playbook 的行为。 为 pig sty conf 增加 -g、-p 与 -o 参数,与该版本中的 configure 脚本保持一致。 在 pgsql-full 软件包别名中保留 llvmjit。 校验和 复制全部校验和 下载资产 文件校验和 pig-0.9.0-1.aarch64.rpm Linuxarm64SHA-256 ea0c098d…13fa …

    变更 将 pig sty install 重命名为 pig sty deploy,使命令名称准确表达其执行 Pigsty 部署 playbook 的行为。 为 pig sty conf 增加 -g、-p 与 -o 参数,与该版本中的 configure 脚本保持一致。 在 pgsql-full 软件包别名中保留 llvmjit。 校验和 复制全部校验和 下载资产 文件校验和 pig-0.9.0-1.aarch64.rpm Linuxarm64SHA-256 ea0c098d…13fa …

  • pig v0.5.0

    冯若航 发布于 发布

    冯若航catalogsty

    pig v0.5.0

    将扩展列表更新至 422 个 新扩展:来自 AWS 的 pgactive 将 timescaledb 升级到 2.20.3 将 citus 升级到 13.1.0 将 vchord 升级到 0.4.3 修复错误:pgvectorscale debian/ubuntu pg17 失败 将 kubernetes 仓库升级到 1.33 将默认 pigsty 版本升级到 3.5.0 校验和 复制全部校验和 下载资产 文件校验和 pig_0.5.0-1_amd64.deb Linuxamd64MD5 …

    将扩展列表更新至 422 个 新扩展:来自 AWS 的 pgactive 将 timescaledb 升级到 2.20.3 将 citus 升级到 13.1.0 将 vchord 升级到 0.4.3 修复错误:pgvectorscale debian/ubuntu pg17 失败 将 kubernetes 仓库升级到 1.33 将默认 pigsty 版本升级到 3.5.0 校验和 复制全部校验和 下载资产 文件校验和 pig_0.5.0-1_amd64.deb Linuxamd64MD5 …

  • pig inventory

    发布于 PIG:Packager Index Gateway

    参考inventorysty

    pig inventory 命令组(别名 pig inv)自 v1.6.0 起提供,用于以 无损 方式检视、编辑、 校验与体检 Pigsty 配置清单(pigsty.yml),并可通过实验性的 cmdb 子命令与 PostgreSQL CMDB 交换配置。 无损引擎会逐字节保留 YAML 的注释、格式、键序、锚点与换行风格;edit 在写盘前重新解析整个文档并原子写入, 非法 YAML 不可能落盘。 Inspect, edit, validate, check, and exchange …

    pig inventory 命令组(别名 pig inv)自 v1.6.0 起提供,用于以 无损 方式检视、编辑、 校验与体检 Pigsty 配置清单(pigsty.yml),并可通过实验性的 cmdb 子命令与 PostgreSQL CMDB 交换配置。 无损引擎会逐字节保留 YAML 的注释、格式、键序、锚点与换行风格;edit 在写盘前重新解析整个文档并原子写入, 非法 YAML 不可能落盘。 Inspect, edit, validate, check, and exchange …

  • pig do

    发布于 PIG:Packager Index Gateway

    参考stycli

    pig do 将常见 Pigsty 管理 Playbook 暴露为明确的 CLI 操作。它使用选定的 Pigsty 主目录与 Inventory,构造对应的 Playbook 命令,并通过 PIG 的旧命令结构化结果适配器返回操作结果。 这些命令会修改远程系统。执行前应检查选中的集群、节点、实例和 Inventory。 该命令族不提供通用 --plan 模式。 pig do pgsql-add pg-test 10.10.10.12 # 添加一个 PostgreSQL 实例 pig do …

    pig do 将常见 Pigsty 管理 Playbook 暴露为明确的 CLI 操作。它使用选定的 Pigsty 主目录与 Inventory,构造对应的 Playbook 命令,并通过 PIG 的旧命令结构化结果适配器返回操作结果。 这些命令会修改远程系统。执行前应检查选中的集群、节点、实例和 Inventory。 该命令族不提供通用 --plan 模式。 pig do pgsql-add pg-test 10.10.10.12 # 添加一个 PostgreSQL 实例 pig do …

  • pig sty

    发布于 PIG:Packager Index Gateway

    参考sty

    pig 也可作为 Pigsty 的命令行工具使用 —— 这是一款开箱即用的免费 PostgreSQL RDS 解决方案。 它为你的 PostgreSQL 集群带来高可用(HA)、PITR、监控、基础设施即代码(IaC)以及丰富的扩展支持。 pig sty - Init (Download), Bootstrap, Configure, and Deploy Pigsty pig sty init [-mpfvd] # install pigsty (~/pigsty by default) …

    pig 也可作为 Pigsty 的命令行工具使用 —— 这是一款开箱即用的免费 PostgreSQL RDS 解决方案。 它为你的 PostgreSQL 集群带来高可用(HA)、PITR、监控、基础设施即代码(IaC)以及丰富的扩展支持。 pig sty - Init (Download), Bootstrap, Configure, and Deploy Pigsty pig sty init [-mpfvd] # install pigsty (~/pigsty by default) …