<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Pg_upgrade on FXIO 技术博客</title><link>https://fxio.site/tags/pg_upgrade/</link><description>Recent content in Pg_upgrade on FXIO 技术博客</description><generator>Hugo -- 0.157.0</generator><language>zh-cn</language><lastBuildDate>Sat, 25 Jul 2026 10:25:00 +0800</lastBuildDate><atom:link href="https://fxio.site/tags/pg_upgrade/index.xml" rel="self" type="application/rss+xml"/><item><title>PostgreSQL 16 → 18 官方升级实践（Ubuntu 24.04）</title><link>https://fxio.site/posts/sql/postgresql-16-upgrade-to-18/</link><pubDate>Sat, 25 Jul 2026 10:25:00 +0800</pubDate><guid>https://fxio.site/posts/sql/postgresql-16-upgrade-to-18/</guid><description>&lt;blockquote&gt;
&lt;p&gt;一次真实的升级记录。&lt;/p&gt;
&lt;p&gt;从 Ubuntu 默认 Cluster 管理模式，迁移到 PostgreSQL 官方推荐目录结构。&lt;/p&gt;
&lt;p&gt;全程使用 pg_upgrade，保留所有数据库，最终实现：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PostgreSQL 18&lt;/li&gt;
&lt;li&gt;官方数据目录&lt;/li&gt;
&lt;li&gt;systemd 管理&lt;/li&gt;
&lt;li&gt;MacBook 远程访问&lt;/li&gt;
&lt;li&gt;完整踩坑记录&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;!-- more --&gt;
&lt;hr&gt;
&lt;h1 id="一为什么升级"&gt;一、为什么升级？&lt;/h1&gt;
&lt;p&gt;原环境：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;项目&lt;/th&gt;
&lt;th&gt;版本&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Ubuntu&lt;/td&gt;
&lt;td&gt;24.04&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PostgreSQL&lt;/td&gt;
&lt;td&gt;16.14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;数据目录&lt;/td&gt;
&lt;td&gt;/srv/data/db/postgres/16/main&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;希望升级到：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;PostgreSQL 18.4
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="postgresql-18-vs-16-关键改进"&gt;PostgreSQL 18 vs 16 关键改进&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;特性&lt;/th&gt;
&lt;th&gt;PostgreSQL 16&lt;/th&gt;
&lt;th&gt;PostgreSQL 18&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;增量备份&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ 仅全量&lt;/td&gt;
&lt;td&gt;✅ pg_basebackup 支持增量，备份时间减少 50%+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;逻辑复制&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;基础支持&lt;/td&gt;
&lt;td&gt;✅ 支持序列和大对象复制&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;并行查询&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;有限并行&lt;/td&gt;
&lt;td&gt;✅ 更多场景支持并行（VACUUM、CREATE INDEX）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;JSON 处理&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;JSONB 基础&lt;/td&gt;
&lt;td&gt;✅ JSON_TABLE 增强，复杂查询更高效&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SSD 优化&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;无特殊处理&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;强制 I/O 调度优化&lt;/strong&gt;（见下文）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;连接池&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;需外部工具&lt;/td&gt;
&lt;td&gt;✅ 内置连接池改进&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="ssd-专项优化重要"&gt;SSD 专项优化（重要）&lt;/h2&gt;
&lt;p&gt;PostgreSQL 18 对 NVMe/SSD 做了底层优化，这是升级的&lt;strong&gt;核心理由&lt;/strong&gt;：&lt;/p&gt;</description></item></channel></rss>