1.官网下载源码

官网直达:postgresql源码下载
选择合适的版本

在这里插入图片描述

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

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

在这里插入图片描述

3.解压

## 解压
tar -zxvf postgresql-16.8.tar.gz -C ./

4.配置及编译

## 进入解压后的目录
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.初始化配置

## ================= 初始化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服务器 就可以使用了,不需要再编译,安装一堆编译插件

sudo tar -zcvf /tmp/pgsql16.8-ubuntu.tar.gz -C /opt pgsql16.8

其他(参考)

# 配置编译参数(指定安装路径、功能开关)
./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                    # 启用线程安全
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐