PostgreSQL 单服务器安装(可用于生产)
PostgreSQL难度: 入门耗时: 30–45 分钟从 PGDG 仓库在单台服务器上安装可用于生产的 PostgreSQL:独立的数据目录、data checksums、按 RAM/CPU 计算的参数、安全访问(peer + scram-sha-256)、日志、pg_stat_statements、防火墙和 SELinux。完成后您将得到一个运行中且已验证的集群,以及一份备份/监控检查清单。
在 streaming replication 中,primary 用本指南安装;standby 上只执行“操作系统准备”,其余步骤见 pg-streaming。不要在 Patroni 节点上用本指南创建集群(Patroni 会自行执行 initdb)→ pg-patroni。
架构: 1 台服务器
开始之前
- 服务器运行受支持的操作系统且已更新到最新。时区和 NTP(chrony)设置正确。
- RAM 和 CPU 与表单中的值一致(参数按这些值计算)。
- 已为 … 挂载单独的磁盘/LV,挂载是持久的(fstab),且有足够的可用空间。…WAL 的单独磁盘也已挂载到 …。…文件系统为 XFS 或 ext4。
- 主机名 … 已设置并解析为本机 IP;可以访问应用网络(…)。
- 服务器可以通过 HTTPS 访问 PostgreSQL 仓库(download.postgresql.org…、apt.postgresql.org…),或已配置内部镜像。
- 端口 … 空闲(没有其他服务使用)。
- 未安装操作系统自带的 PostgreSQL 软件包(它与 PGDG 冲突)。
- 您已以 root 或具有 sudo 权限的用户登录;维护窗口和回退计划(服务器快照)已准备就绪。
指南阶段
- 操作系统准备 — 主机名和系统更新 · 检查 locale · 内核参数(sysctl) · 应用 sysctl 设置 · 禁用 Transparent Huge Pages
- 安装 PostgreSQL 软件 — 添加 PGDG 仓库 · 添加 PGDG 仓库 · 安装 PostgreSQL 服务器软件
- 创建数据目录和集群 — 创建目录并设置权限 · 定义 SELinux 标签 · 创建集群(initdb) · 创建集群(pg_createcluster)
- 配置 — 写入参数文件 · 启用 conf.d 目录 · 访问规则(pg_hba.conf)
- 启动服务 — 预留 huge pages · 启用并启动服务 · 在防火墙中开放端口
- 用户和数据库 — 为 postgres 用户设置密码 · 应用用户和数据库 · 为应用用户设置密码 · pg_stat_statements 扩展
- 验证 — 检查参数是否已生效 · 远程连接测试 · 检查日志文件
- 安装后 — 设置备份(必需) · 接入监控