跳到主要内容

postgres安装

pg官网

pg github

pg官方文档

docker安装

docker安装官方文档

支持的环境变量

变量名说明是否必须
POSTGRES_PASSWORD设置 PostgreSQL 超级用户的密码
POSTGRES_USER如果未指定则使用默认超级用户 postgres
POSTGRES_DB指定 初始化时创建的默认数据库名,如果未指定,则使用POSTGRES_USER的值
POSTGRES_INITDB_ARGSpostgres initdb 传额外参数,开启数据页校验(提高数据安全)
POSTGRES_INITDB_WALDIR定义Postgres事务日志存放路径,默认情况下,事务日志存储在主 Postgres 数据文件夹的子目录中,⚠️PostgreSQL 9.x 里变量名叫 POSTGRES_INITDB_XLOGDIR
POSTGRES_HOST_AUTH_METHOD用于控制auth-method,用于host连接,适用于all数据库、all用户和all地址。如果未指定,则使用 scram-sha-256 密码认证(14+ 版本;旧版本为 md5
PGDATApg的数据持久化目录为 /var/lib/postgresql/data ,从 PostgreSQL 18 起 ,变成了 /var/lib/postgresql/<version>/docker
docker run -d \
--name postgres \
--hostname pg-db-01 \
-p 5432:5432 \
-e POSTGRES_PASSWORD=123456 \
-v /data/docker-volume/pg:/var/lib/postgresql/data \
--restart always \
postgres:17.1

包管理器安装

包管理器安装官方文档

可以在这里选择操作系统,架构以及软件版本

iShot_2026-01-08_10.38.24

rpm

安装软件源

dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-10-aarch64/pgdg-redhat-repo-latest.noarch.rpm

安装

dnf install -y postgresql18-server

初始化

/usr/pgsql-18/bin/postgresql-18-setup initdb

启动服务并加入开机自启

systemctl enable postgresql-18
systemctl start postgresql-18

连接pg

切换用户

su - postgres 

连接pg

$ psql
psql (18.1)
Type "help" for help.

postgres=#

二进制安装

二进制安装官方文档

源码安装

Bottom GIF
Top GIF