在统信UOS上安装PostgreSQL需按环境选路径:APT在线安装最快捷但须更新源;DEB离线安装需严格匹配架构与版本;源码编译支持深度信创适配但依赖手动处理。

在统信UOS操作系统上安装PostgreSQL关系型数据库,需根据网络连通性、版本精度与部署环境选择匹配路径,直接套用Ubuntu命令或忽略架构标识(如uos20_amd64)会导致包找不到、依赖修复失败或服务单元无法启动。
APT在线安装(联网环境最快捷)
这一步操作起来很简单,直接执行命令即可完成基础部署,但必须确保软件源已启用并更新,否则将找不到postgresql包。
以root权限运行终端,执行系统源索引刷新:【sudo apt update】
安装服务端、客户端及常用扩展工具:【sudo apt install -y postgresql postgresql-contrib】
安装过程会自动创建postgres系统用户,并在/var/lib/postgresql/下初始化默认集群;验证服务是否已激活:【sudo systemctl status postgresql】。若显示“active (exited)”或“active (running)”,说明服务已就绪。
切换至postgres用户进入数据库交互界面:【sudo -u postgres psql】
在psql中立即设置密码,否则远程连接会被拒绝:【ALTER USER postgres WITH PASSWORD 'your_secure_password';】
DEB离线安装(无网或需指定14.2等精确版本)
该方法绕过网络依赖,但必须严格匹配目标机器的CPU架构(amd64/arm64)和UOS版本号(如uos20),否则dpkg安装后依赖修复会失败。
方法一:主包强制安装+依赖修复
在联网机下载对应架构的DEB主包,例如:【wget https://professional-packages.chinauos.com/desktop-professional/pool/main/p/postgresql-14/postgresql-14_14.2-1.pgdg+uos20_amd64.deb】
将该.deb文件及配套依赖(postgresql-client-14、libpq5、postgresql-common、ssl-cert)拷贝至UOS目标机任意目录
使用dpkg强制安装主包,忽略当前缺失依赖:【sudo dpkg -i --force-depends postgresql-14_14.2-1.pgdg+uos20_amd64.deb】
立即执行依赖修复,补全运行时库:【sudo apt --fix-broken install -y】
创建标准数据目录并授权:【sudo mkdir -p /var/lib/postgresql/14/main/ && sudo chown -R postgres:postgres /var/lib/postgresql/14/main/】
以postgres用户身份初始化集群:【sudo -u postgres /usr/lib/postgresql/14/bin/initdb -D /var/lib/postgresql/14/main/】
源码编译安装(定制化与信创深度适配)
此方式支持启用SSL/PAM/LDAP/PostGIS等模块,适用于国产化信创环境或需集成地理空间扩展的生产场景,但需手动处理全部依赖与编译参数。
第一步:安装编译依赖链
执行命令一次性装齐必要组件:【sudo apt install -y build-essential libreadline-dev zlib1g-dev libxml2-dev libxslt-dev libssl-dev libicu-dev libldap2-dev libcurl4-openssl-dev libpam0g-dev uuid-dev libgeos-dev libproj-dev protobuf-compiler libprotobuf-dev libprotobuf-c-dev protobuf-c-compiler gdal-bin libgdal-dev】
第二步:获取并解压源码
下载PostgreSQL 14.2源码包:【wget https://ftp.postgresql.org/pub/source/v14.2/postgresql-14.2.tar.bz2】
解压并进入源码目录:【tar xjf postgresql-14.2.tar.bz2 && cd postgresql-14.2】
第三步:配置与编译
执行configure脚本,指定安装路径及关键模块:【./configure --prefix=/usr/local/pgsql --with-openssl --with-pam --with-ldap --with-libxml --with-libxslt --with-icu --with-zlib --with-readline】
编译并安装:【make && sudo make install】
第四步:初始化运行环境
创建专用运行用户与数据目录:【sudo useradd -r -m -u 26 -g 26 -d /var/lib/postgresql postgres && sudo mkdir -p /usr/local/pgsql/data && sudo chown -R postgres:postgres /usr/local/pgsql/data】
以postgres用户身份初始化数据库:【sudo -u postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data】











