数据库安装
IITLDesk默认支持PostgreSQL数据库,优先版本为LTS12/16。信创需求则选择人大金仓数据库或瀚高数据库,免费可考虑openguassdb(华为高斯)。
Linux PG16安装
- AlmaLinux 10 (PG16)
- Ubuntu (PG16)
- CentOS 7 (PG12 yum)
- 离线源码安装
适用 AlmaLinux 9/10(RHEL 系 dnf 包管理器),使用系统 AppStream 仓库自带的 PostgreSQL 16 module,无需额外添加 PGDG 源。
1. 确认 module 并启用
# 查看可用的 postgresql module 版本
dnf module list postgresql
# 启用 postgresql:16(默认 stream 可能不是 16,需手动指定)
dnf module enable -y postgresql:16
2. 安装服务端与客户端
dnf install -y postgresql-server
3. 初始化数据库
AlmaLinux 10 首次安装后数据目录为空,必须执行初始化:
postgresql-setup --initdb
成功后数据目录位于 /var/lib/pgsql/data/。
4. 启动并设置开机自启
systemctl enable --now postgresql
systemctl status postgresql
5. 设置 postgres 用户密码
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '你的密码';"
6. 允许远程连接
编辑 /var/lib/pgsql/data/postgresql.conf,找到并改为:
listen_addresses = '*'
编辑同目录下 pg_hba.conf,文件末尾添加:
host all all 0.0.0.0/0 scram-sha-256
重启生效:
systemctl restart postgresql
7. 防火墙放行 5432 端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
8. 验证
psql -h 服务器IP -U postgres -d postgres
输入密码后进入 postgres=# 提示符即安装成功。
适用 Ubuntu 22.04 LTS / 24.04 LTS Server。Ubuntu 24.04 仓库默认即为 PostgreSQL 16,22.04 需添加 PGDG 官方源。
1. 安装前置依赖并导入 PGDG GPG 密钥
sudo apt update
sudo apt install -y postgresql-common curl
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh
2. 安装 PostgreSQL 16
sudo apt update
sudo apt install -y postgresql-16
安装完成后服务自动启动,数据目录位于 /etc/postgresql/16/main/。
3. 确认服务状态
sudo systemctl status postgresql
如需手动启停:
sudo systemctl start postgresql
sudo systemctl enable postgresql
4. 设置 postgres 用户密码
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '你的密码';"
5. 允许远程连接
编辑 /etc/postgresql/16/main/postgresql.conf,找到并改为:
listen_addresses = '*'
编辑 /etc/postgresql/16/main/pg_hba.conf,文件末尾添加:
host all all 0.0.0.0/0 scram-sha-256
重启生效:
sudo systemctl restart postgresql
6. 防火墙放行 5432 端口
sudo ufw allow 5432/tcp
sudo ufw reload
7. 验证
psql -h 服务器IP -U postgres -d postgres
输入密码后进入 postgres=# 提示符即安装成功。
完整步骤如下(CentOS 7 全流程,建议先看前置说明):
0. 前置:CentOS 7 已 EOL,先处理 yum 源问题
CentOS 7 已于 2024-06-30 停止维护,官方 mirror.centos.org 镜像已下线。如果你的机器 yum 报 Could not resolve host: mirror.centos.org 之类错误,先切换源:
# 把默认源指向 vault.centos.org(或替换为阿里云等国内镜像)
sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-*.repo
sed -i 's|^#baseurl=[http://mirror.centos.org](http://mirror.centos.org)|baseurl=[http://vault.centos.org](http://vault.centos.org)|g' /etc/yum.repos.d/CentOS-*.repo
yum clean all && yum makecache
如果 yum 能正常使用,可跳过此步。
1. 安装 PGDG 官方 yum 仓库
yum install -y [https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm](https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm)
2. 安装 PostgreSQL 12
yum install -y postgresql12 postgresql12-server postgresql12-contrib
postgresql12:客户端与基础工具postgresql12-server:服务端(必须)postgresql12-contrib:扩展功能包(可选但推荐)
3. 初始化数据库
/usr/pgsql-12/bin/postgresql-12-setup initdb
初始化后数据目录为 /var/lib/pgsql/12/data,默认由 postgres 系统用户管理。
4. 启动服务并设置开机自启
systemctl enable --now postgresql-12
systemctl status postgresql-12 # 确认 active (running)
注意服务名是 postgresql-12(带版本号),不是 postgresql。
5. 验证安装
/usr/pgsql-12/bin/psql --version
sudo -u postgres /usr/pgsql-12/bin/psql -c "SELECT version();"
6. 可选:基础配置
① 设置 postgres 用户密码
sudo -u postgres /usr/pgsql-12/bin/psql -c "ALTER USER postgres WITH PASSWORD '你的密码';"
② 允许远程连接:编辑 /var/lib/pgsql/12/data/postgresql.conf,找到并改为:
listen_addresses = '*' # 默认是 'localhost'
编辑同目录下 pg_hba.conf,文件末尾添加:
host all all 0.0.0.0/0 md5
然后重启:systemctl restart postgresql-12
③ 防火墙放行 5432 端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
两点提醒
- 版本 EOL:PostgreSQL 12 官方支持已于 2024-11 结束,仅建议在存量兼容场景使用;新项目建议装 PG 14+(改包名为
postgresql14-server等,流程完全相同)。 - 路径差异:PG12 的可执行文件在
/usr/pgsql-12/bin/下,不在系统默认 PATH 里,用 psql 等命令时注意带全路径或用sudo -u postgres /usr/pgsql-12/bin/psql。
适用于无外网的内网环境,在外网机器下载源码包和编译依赖,整体拷贝到内网安装。以 PostgreSQL 16 + RHEL/CentOS 系为例。
1. 在外网机器准备安装包
下载源码包:
# PostgreSQL 16 最新小版本(以 16.x 为例,实际版本号以官网为准)
curl -LO https://download.postgresql.org/pub/source/v16.10/postgresql-16.10.tar.gz
下载编译依赖 rpm 包(在同版本 RHEL/Alma 机器上执行,会下载到当前目录):
yum install -y --downloadonly --downloaddir=./deps gcc make readline-devel zlib-devel openssl-devel libxml2-devel libxslt-devel perl-IPC-Run
将 postgresql-16.10.tar.gz 和 ./deps/ 目录一并拷贝到内网服务器。
2. 在内网安装编译依赖
cd deps
rpm -Uvh *.rpm
# 若有依赖顺序报错,逐个安装或加 --nodeps(谨慎)
3. 解压并编译
cd /opt
tar -zxf postgresql-16.10.tar.gz
cd postgresql-16.10
./configure --prefix=/opt/pgsql16 --with-openssl --with-libxml --with-libxslt --with-blocksize=8 --with-wal-blocksize=8
make -j$(nproc)
make install
--prefix 为安装目录,可按需调整。编译过程约 10-20 分钟。
4. 创建 postgres 用户和数据目录
useradd -m -s /bin/bash postgres
mkdir -p /opt/pgsql16/data
chown postgres:postgres /opt/pgsql16/data
5. 配置环境变量
编辑 /etc/profile.d/pgsql16.sh:
export PGHOME=/opt/pgsql16
export PGDATA=/opt/pgsql16/data
export PATH=$PGHOME/bin:$PATH
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
生效:
source /etc/profile.d/pgsql16.sh
6. 初始化数据库
su - postgres
initdb -D /opt/pgsql16/data -E UTF8 --locale=C
7. 配置远程连接
编辑 /opt/pgsql16/data/postgresql.conf:
listen_addresses = '*'
port = 5432
编辑 /opt/pgsql16/data/pg_hba.conf,末尾添加:
host all all 0.0.0.0/0 scram-sha-256
8. 注册 systemd 服务
创建 /etc/systemd/system/postgresql-16.service:
[Unit]
Description=PostgreSQL 16
After=network.target
[Service]
Type=forking
User=postgres
Group=postgres
Environment=PGDATA=/opt/pgsql16/data
ExecStart=/opt/pgsql16/bin/pg_ctl start -D /opt/pgsql16/data -l /opt/pgsql16/data/logfile
ExecStop=/opt/pgsql16/bin/pg_ctl stop -D /opt/pgsql16/data
ExecReload=/opt/pgsql16/bin/pg_ctl reload -D /opt/pgsql16/data
TimeoutSec=300
[Install]
WantedBy=multi-user.target
启用并启动:
systemctl daemon-reload
systemctl enable --now postgresql-16
9. 设置密码与防火墙
su - postgres -c "psql -c \"ALTER USER postgres WITH PASSWORD '你的密码';\""
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
10. 验证
psql -h 127.0.0.1 -U postgres -d postgres
进入 postgres=# 即安装成功。
Windows PG16安装
1. EnterpriseDB 官方下载站(推荐) https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
- 选择 PostgreSQL 16.x → Windows x86-64 图形化安装包(
.exe) - 由 EDB 提供,PostgreSQL 全球官方指定 Windows 发行方
- 安装器自带:pgAdmin 图形管理工具、Stack Builder(扩展工具)、命令行工具
- 约 300MB
2. PostgreSQL 官网 https://www.postgresql.org/download/windows/ 页面会跳转指引到上述 EDB 下载页。
3. 免安装 ZIP 版 同一下载页下方有 "Binaries" ZIP 包,适合静默部署或不想用安装向导的场景,解压即用,需手动注册服务。
4. 国内镜像(内网 / 加速)
- 华为云镜像:
https://mirrors.huaweicloud.com/postgresql/ - 阿里云开源镜像站
- 内网环境建议在外网下载
.exe后拷贝到内网安装。
版本选择建议:
- 生产环境选 16.x 最新小版本(当前 16.10 左右,以官网为准)
- 64 位系统选 x86-64
- 安装时默认自带 PostgreSQL 16 数据目录
C:\Program Files\PostgreSQL\16\