1.官网下载源码
官网直达:postgresql源码下载
选择合适的版本
2.将tar包上传到ubuntu服务器
这里注意一点:博主服务器是
ubuntu22.04 LTS版本,所以你在这个版本打的二进制包,最好在同一个版本的ubuntu服务器部署,否则安装会报错
3.解压
## 解压tar-zxvf postgresql-16.8.tar.gz -C ./4.配置及编译
## 进入解压后的目录cdpostgresql-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.8makeinstall5.初始化配置
## ================= 初始化data ================= ###创建用户sudouseradd-m postgres#准备数据目录sudomkdir-p /opt/pgsql16.8/datasudochown-R postgres:postgres /opt/pgsql16.8/datasudochmod700/opt/pgsql16.8/data# 初始化DB 改成 postgres 用户执行:sudo-u postgres /opt/pgsql16.8/bin/initdb -D /opt/pgsql16.8/data6.打二进制包
解释:将
/opt目录下的pgsql16.8打包至/tmp/pgsql16.8-ubuntu.tar.gz
打完tar.gz包后,拷贝到相同版本的ubuntu服务器 就可以使用了,不需要再编译,安装一堆编译插件
sudotar-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# 启用线程安全