统信UOS上部署PostgreSQL需按环境选择安装方式:联网环境用APT在线安装(自动创建用户、初始化并注册服务);离线或指定版本用DEB包安装(需补全依赖并手动初始化);定制化需求或ARM64平台用源码编译(支持SSL、LDAP、PostGIS等扩展)。

您在统信UOS上需要部署PostgreSQL数据库,但系统未预装、版本不匹配或处于离线环境,必须根据网络连通性、目标版本要求和硬件架构选择对应安装路径,否则服务无法启动或远程连接被拒绝。
APT在线安装(联网环境最快捷)
该方式适用于UOS Server 20或Desktop Professional 1070及以上版本,能自动创建postgres用户、初始化数据目录并注册systemd服务。
执行系统源更新:sudo apt update
安装核心服务与扩展工具:sudo apt install -y postgresql postgresql-contrib
验证服务是否已自动运行:sudo systemctl status postgresql。若显示“inactive (dead)”,说明初始化失败,需检查/var/log/postgresql/日志中initdb报错。
切换至postgres用户进入数据库:sudo -u postgres psql
为默认用户设置密码——【这一步不可跳过,否则所有远程连接将因认证失败被拒绝】:ALTER USER postgres WITH PASSWORD 'YourStrongPass123!';
退出交互界面:\q
DEB离线包安装(内网/指定版本场景)
当目标机器完全断网,或必须使用postgresql-14.2等非源默认版本时采用此法。注意:必须提前在联网机下载完整依赖链,否则dpkg安装后无法修复。
方法一:主包强制安装→依赖修复→手动初始化
在目标机执行:sudo dpkg -i --force-depends postgresql-14_14.2-1.pgdg+uos20_amd64.deb
立即执行依赖补全:sudo apt --fix-broken install -y。若提示“unmet dependencies”且反复失败,说明缺失libpq5、postgresql-common等关键包,需回联网机补全再传入。
创建标准数据目录并授权: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
PostgreSQL 18.4 官方 Ubuntu 安装包现已发布,这是目前最新的稳定版本。推荐通过官方 APT 仓库安装:先执行 sudo apt update 更新索引,再运行 sudo apt install postgresql-18 即可完成部署。新版本引入了异步 I/O 子系统,在顺序扫描与 VACUUM 场景下性能提升显著,同时支持 UUID v7 原生生成函数与虚拟生成列。
启用并启动实例服务:sudo systemctl start postgresql@14-main && sudo systemctl enable postgresql@14-main
源码编译安装(定制化/ARM64/PostGIS集成)
适用于需启用SSL、PAM、LDAP、ICU或集成PostGIS地理扩展的生产环境,也适配鲲鹏、飞腾等arm64国产芯片平台。
第一步:安装全部编译依赖
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
第二步:下载并解压源码
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 --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 /usr/local/pgsql postgres && sudo mkdir -p /usr/local/pgsql/data && sudo chown -R postgres:postgres /usr/local/pgsql/data
第六步:初始化并启动
sudo -u postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data && sudo /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/logfile start

















