源码安装PostgreSQL
- 本文使用的Linux发行版本为AlmaLinux 9.2 64位(CentOS停止更新后的完美替代发行版本)。
- 本文安装的PostgreSQL版本为16.1,其他版本方法类似。
准备工作
- 更新系统。
dnf -y update - 安装依赖。
dnf -y group install "Development tools" dnf -y install readline-devel libicu libicu-devel - 创建postgres用户。
groupadd postgres useradd -g postgres postgres - 创建安装目录并授权。
mkdir -p /usr/local/postgres16.1 chown -R postgres:postgres /usr/local/postgres16.1 - 切换postgres用户,并进入用户目录。
su postgres cd ~ - 修改环境变量配置。
- 编辑
.bash_profile文件。vim .bash_profile - 按
i在# User specific environment and startup programs后添加如下内容。export PG_HOME=/usr/local/postgres16.1 export PATH=$PG_HOME/bin:$PATH export PGDATA=$PG_HOME/data - 按
Ecs输入:wq!保存并退出。 - 使环境变量生效。
source .bash_profile
- 编辑
源码安装PostgreSQL
- 获取源码链接。
- 进入PostgreSQL官网,单击
Download。 - 找到目标版本的源码包,右键复制链接。

- 进入PostgreSQL官网,单击
- 下载。
wget https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.gz - 解压。
tar -zxvf postgresql-16.1.tar.gz - 编译安装。
cd postgresql-16.1 ./configure --prefix=$PG_HOME make make install - 查看版本验证。
psql --version - 初始化。
initdb -D $PGDATA - 启动。
pg_ctl start - 进入数据库。
psql - 输入
\password为postgres管理员用户初始化密码。(需要输入两次) - 输入
\q退出数据库。
开放外部访问
- 停止服务。
pg_ctl stop - 修改
postgresql.conf配置文件。- 编辑
postgresql.conf配置文件。vim $PGDATA/postgresql.conf - 按
i修改如下内容,放开注释。listen_addresses = '*' # what IP address(es) to listen on; # comma-separated list of addresses; # defaults to 'localhost'; use '*' for all # (change requires restart) port = 5432 # (change requires restart)如果你的PostgreSQL部署在云服务器上,还需要在云服务器上对外开启5432端口。
- 输入
:wq!保存并退出。
- 编辑
- 修改
pg_hba.conf配置文件。- 编辑
pg_hba.conf配置文件。vim $PGDATA/pg_hba.conf - 找到
# IPv4 local connections:区域,在该区域下按i编辑,将原有默认本地连接的配置修改为如下内容。host all all 0.0.0.0/0 md5 - 输入
:wq!保存并退出。
- 编辑
- 启动服务。
pg_ctl start - 现在就可以从外部访问PostgreSQL数据库了。
psql -h <服务器IP> -P 5432 -U postgres -d postgres

浙公网安备 33010602011771号