PostgreSQL Field Guide

Ubuntu 安装 PostgreSQL 18

使用 Ubuntu 自带包或 PostgreSQL 官方 Apt 仓库安装并验证 PostgreSQL

Ubuntu 自带 PostgreSQL 包,但其 major 版本由 Ubuntu 发行版快照决定。如果只需要该发行版维护的默认版本:

sudo apt update
sudo apt install postgresql postgresql-client

软件包快照证据 · PkgSeek

Ubuntu 默认 postgresql 元包

已收录
发行版版本索引版本仓库关联公告
Ubuntufocal12+214official / main
Ubuntujammy14+238official / main
Ubuntunoble16+257build1official / main
Ubunturesolute18+290ubuntu1official / main
快照核对时间: 2026年8月2日 15:47 UTC. 发行版 revision 与回溯补丁属于完整版本身份;关联公告为 0 也不是永久安全保证。打开软件包查询

这个快照说明不同 Ubuntu release 的默认 major 并不相同。postgresql 是跟随发行版的元包,不等于永远安装 PostgreSQL 18。完整区别见 Linux 软件包与 PGDG

明确安装 PostgreSQL 18

需要指定 major 时,使用 PostgreSQL 项目维护的 Apt 仓库。官方提供自动配置脚本:

sudo apt install -y postgresql-common ca-certificates
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh
sudo apt update
sudo apt install postgresql-18 postgresql-client-18

执行脚本前阅读其输出并确认系统版本受支持。命令和当前支持的 Ubuntu 版本以 PostgreSQL Ubuntu 下载页 为准。

软件包快照证据 · PkgSeek

PkgSeek:Ubuntu / PGDG / postgresql-18

没有准确索引坐标

PkgSeek 没有为这个坐标返回准确匹配。这只表示“当前快照未收录”,不等于“软件包不存在”;执行操作前仍需核对上游仓库。

快照核对时间: 2026年8月2日 15:47 UTC. 发行版 revision 与回溯补丁属于完整版本身份;关联公告为 0 也不是永久安全保证。打开软件包查询

若卡片没有返回准确的 PGDG 坐标,不能把空结果解释为软件包不存在。安装前以 PGDG 仓库元数据和 PostgreSQL 官方下载页复核;本站保留空状态,是为了显式暴露数据覆盖边界,而不是用推测补齐。

验证服务和集群

systemctl status postgresql --no-pager
pg_lsclusters
sudo -u postgres psql -X -d postgres \
  -c "select version(), current_setting('data_directory');"

postgresql.service 是集群管理入口;具体实例通常对应 postgresql@18-mainpg_lsclusters 属于 Debian/Ubuntu 的 postgresql-common 工具,不是所有 Linux 发行版都有。

创建一个本地练习角色和数据库:

sudo -u postgres createuser --pwprompt learner
sudo -u postgres createdb --owner=learner learner
psql -X -h localhost -U learner -d learner -c "select current_user;"

不要直接编辑到全网可连

远程连接需要同时考虑 listen_addressespg_hba.conf、防火墙和 TLS。修改前保存原配置,规则从具体网段/数据库/角色写起,并同时测试允许和拒绝路径。

升级边界

apt upgrade 可以安装同一 major 的 minor 修复;从 17 到 18 是大版本升级,需要 pg_upgrade、逻辑 dump/restore 或逻辑复制,不能只替换软件包后复用数据目录。

Last updated on

On this page