PostgreSQL 17.6 源码安装完整指南
PostgreSQL 17.6 源码安装完整指南
PostgreSQL 是一款功能强大的开源关系型数据库管理系统。本文将详细介绍如何在 Linux 环境下通过源码编译安装 PostgreSQL 17.6。
安装方式选择
在 Linux 下安装 PostgreSQL 主要有三种方式:
- 二进制安装包安装 - 简单快捷
- 通过 yum 安装 - 一键安装:
yum search postgresql && yum install postgresql - 源码编译安装 - 灵活性最高,可定制化强
本文将重点介绍源码编译安装方式,这种方式可以让用户根据特定需求进行定制化配置。
环境准备
1. 创建用户与组
首先需要创建专门的用户来运行 PostgreSQL:
1 | # groupadd postgres |
切换到 postgres 用户:
1 | su - postgres |
2. 环境变量配置
在 postgres 用户的 ~/.bash_profile 文件中添加以下环境变量:
1 | export PGPORT=1922 |
执行 source ~/.bash_profile 使配置生效。
依赖包检查与安装
在编译前需要确保系统已安装必要的依赖包。以 RedHat/CentOS 为例:
最小依赖包:
1 | yum install -y gcc gcc-c++ zlib-devel readline-devel |
其他可选依赖包:
1 | yum install -y perl-ExtUtils-Embed pam-devel libxml2-devel \ |
重要的编译依赖包括:readline、flex、bison。
源码编译安装
下载源码
从 PostgreSQL 官网下载源码:
1 | wget https://ftp.postgresql.org/pub/source/v17.6/postgresql-17.6.tar.gz |
编译安装步骤
使用 postgres 用户执行以下命令:
1 | $ cd /soft/postgresql-17.6 |
Configure 常用配置选项
prefix:指定安装路径with-openssl:对 openssl 进行扩展支持with-python:对 python 进行扩展支持with-perl:对 perl 进行扩展支持with-libxml:对 xml 进行扩展支持
数据库初始化与使用
1. 创建数据库集簇
创建数据目录:
1 | mkdir /usr/local/pg17.6/data |
初始化数据库集簇:
1 | initdb -D $PGDATA -W |
注意:
-W参数指定创建数据库时让用户输入数据库用户 postgres 的密码- 使用
initdb --help查看命令用法和参数 - 操作系统用户名为 postgres,数据库中的超级用户名字也叫 postgres,注意区别
2. 数据库启动与关闭
启动数据库集簇:
1 | pg_ctl -D $PGDATA start |
关闭数据库集簇(多种方式):
正常快速关闭(默认,fast 可以省略):
1
pg_ctl -D $PGDATA stop -m fast
正常关闭:
1
pg_ctl -D $PGDATA stop -m smart
非正常快速关闭(下一次数据库启动需要做实例恢复):
1
pg_ctl -D $PGDATA stop -m immediate
注意: -D 参数可以省略,如果在用户环境中配置了 PGDATA 环境变量。
总结
通过源码编译安装 PostgreSQL 17.6 虽然步骤相对复杂,但提供了最大的灵活性和控制权。安装完成后,您就拥有了一个完全定制的 PostgreSQL 数据库环境,可以根据具体需求进行进一步的配置和优化。
建议在生产环境中使用前,充分测试各项功能,确保数据库的稳定性和性能满足应用需求。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Nosaw博客!
评论








