postgresql16.8二进制包编译

1.官网下载源码

官网直达:postgresql源码下载

选择合适的版本

2.将tar包上传到ubuntu服务器

这里注意一点:博主服务器是ubuntu22.04 LTS 版本,所以你在这个版本打的二进制包,最好在同一个版本的ubuntu服务器部署,否则安装会报错

3.解压

bash 复制代码
## 解压
tar -zxvf postgresql-16.8.tar.gz -C ./

4.配置及编译

bash 复制代码
## 进入解压后的目录
cd postgresql-16.8

## 配置
 ./configure \
  --prefix=/opt/pgsql16.8 \
  --with-openssl \
  --with-zlib \
  --with-libxml \
  --with-libxslt \
  --enable-thread-safety

## 编译(耗时约5-10分钟,视服务器配置)
make -j$(nproc)

## 安装到/opt/pgsql16.8
make install

5.初始化配置

bash 复制代码
## ================= 初始化data ================= ##
#创建用户
sudo useradd -m postgres

#准备数据目录
sudo mkdir -p /opt/pgsql16.8/data
sudo chown -R postgres:postgres /opt/pgsql16.8/data
sudo chmod 700 /opt/pgsql16.8/data

# 初始化DB 改成 postgres 用户执行:
sudo -u postgres /opt/pgsql16.8/bin/initdb -D /opt/pgsql16.8/data

6.打二进制包

解释:将/opt 目录下的 pgsql16.8 打包至 /tmp/pgsql16.8-ubuntu.tar.gz

打完 tar.gz 包后,拷贝到相同版本的ubuntu服务器 就可以使用了,不需要再编译,安装一堆编译插件

bash 复制代码
sudo tar -zcvf /tmp/pgsql16.8-ubuntu.tar.gz -C /opt pgsql16.8

其他(参考)

bash 复制代码
# 配置编译参数(指定安装路径、功能开关)
./configure \
  --prefix=/usr/lib/postgresql/16 \          # deb包默认安装路径(符合Ubuntu规范)
  --sysconfdir=/etc/postgresql/16/main \    # 配置文件路径
  --datadir=/usr/share/postgresql/16 \      # 数据共享目录
  --localstatedir=/var/lib/postgresql/16 \  # 状态文件目录
  --mandir=/usr/share/man \                 # 手册页目录
  --enable-nls \                            # 启用多语言支持
  --enable-ssl=openssl \                    # 启用SSL
  --enable-libxml \                         # 启用XML支持
  --enable-libxslt \                        # 启用XSLT支持
  --enable-icu \                            # 启用ICU(字符集处理)
  --with-zlib \                             # 启用zlib压缩
  --with-readline \                         # 启用readline(命令行补全)
  --with-systemd \                          # 支持systemd服务(关键,Ubuntu 22.04必开)
  --enable-thread-safety                    # 启用线程安全
相关推荐
像风一样自由20209 小时前
56.实战PostgreSQL-pgvector-FastAPI构建轻量级RAG
数据库·人工智能·postgresql·大模型·fastapi·智能体
荒--12 小时前
Ubuntu软件包查询,弹框下载文件
运维·服务器·ubuntu
闲云自留地13 小时前
CentOS 搬 Ubuntu 24.04:yum 变 apt、防火墙、SELinux、root 全差异避坑
linux·ubuntu·centos
ss27314 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 11 PostgreSQL安装部署常见问题排查与解决
数据库·笔记·postgresql
ss27315 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 12 PostgreSQL数据目录与重要文件结构
数据库·笔记·postgresql
xiaobobo333017 小时前
Ubuntu 26.04环境中如何使用中文man手册以及man手册默认中文显示
ubuntu·中文man手册·man手册默认中文显示·简化man·cheat
菜菜的院子17 小时前
WSL2 运行 Ubuntu 26.04 完整 GNOME 桌面(WSLg Wayland)
linux·运维·ubuntu·wsl
一木 之林18 小时前
LangChain 第8章 记忆系统:短期/长期记忆与 PostgreSQL 持久化
数据库·postgresql·langchain
KIDULT°19 小时前
Kubeadm 部署 Kubernetes v1.30.2 实战:Ubuntu24.04 三节点集群 + 排坑记录
ubuntu·云原生·容器·kubernetes·k8s
xiaobobo333019 小时前
man手册的格式、共性、命令
ubuntu·man手册结构·man手册共性·man手册命令