国产麒麟V10上从零编译PostgreSQL 16.6:ARM架构信创环境实战指南
本文介绍了在麒麟V10 ARM服务器上通过源码编译安装PostgreSQL 16.6的完整步骤。麒麟V10是基于国产Linux的操作系统,专为飞腾、鲲鹏等ARM芯片优化,而PostgreSQL是功能强大的开源数据库。由于系统包管理器缺少PostgreSQL安装包,需手动编译。步骤包括:查看系统版本、下载解压源码、安装依赖、编译安装、配置环境变量、创建用户和数据目录、初始化数据库、配置监听地址与远程访问、启动数据库并验证端口。整个过程适用于信创环境下的数据库部署需求。
麒麟v10(KylinOS V10)是基于国产Linux开发的通用操作系统,其ARM架构版本专为飞腾、鲲鹏等国产ARM芯片深度优化,具备高安全等级(内置国密算法与强制访问控制)及良好的生态兼容性,支持主流国产软件及容器、虚拟化等云原生环境,广泛应用于政务、金融、能源等领域的信创服务器与工作站。
PostgreSQL是一个功能强大的开源对象关系型数据库系统,以高扩展性、SQL标准兼容性好和支持复杂查询著称;它不仅支持ACID事务、外键、视图、触发器和存储过程等企业级特性,还具备JSON/JSONB文档处理、多种索引类型(如B-tree、Hash、GIN、GiST等)、全文本搜索和地理空间扩展等高级功能,在确保数据可靠性的同时能高效处理从小型应用到大型数据仓库的各类负载。
由于麒麟v10包管理器上没有postgresql安装包,所以只能通过PostgreSQL源码进行编译。
下载地址
PostgreSQL源码下载地址:https://ftp.postgresql.org/pub/source/
安装方法
1、查询麒麟系统版本。
nkvers
返回值
############## Kylin Linux Version #################
Release:
Kylin Linux Advanced Server release V10 (Lance)
Kernel:
4.19.90-52.22.v2207.ky10.aarch64
Build:
Kylin Linux Advanced Server
release V10 (SP3) /(Lance)-aarch64-Build23/20230324
#################################################
2、下载PostgreSQL源码。
curl https://ftp.postgresql.org/pub/source/v16.6/postgresql-16.6.tar.gz -o postgresql-16.6.tar.gz
3、解压PostgreSQL源码压缩包。
postgres]# tar -zvxf postgresql-16.6.tar.gz
4、安装依赖包。
yum install readline.aarch64 readline-devel.aarch64
5、编译并安装PostgreSQL。
cd postgresql-16.6/
./configure --prefix=/opt/postgresql --without-readline
make
make install
6、配置环境变量。
cd /etc/profile.d/
vim postgresql.sh
编辑文件
export PGHOME=/opt/postgresql
export PGDATA=/opt/postgresql/data
export PATH=$PGHOME/bin:$PATH
export LANG=en_US.utf8
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
运行文件
source postgresql.sh
7、 创建用户和数据中心。
useradd postgres
mkdir -p /opt/postgresql/data/pgsql
chown postgres:postgres /opt/postgresql/data/pgsql
8、初始化数据库。
su - postgres
/opt/postgresql/bin/initdb -D /opt/postgresql/data/pgsql
9、配置监听的IP地址。
vim /opt/postgresql/data/pgsql/postgresql.conf
找到并修改下面一行:
#listen_addresses = 'localhost'
10、配置允许远程访问。
vim /opt/postgresql/data/pgsql/pg_hba.conf
修改
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all trust
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
trust表示无密码登录,md5表示使用密码登录。
11、启动数据库。
/opt/postgresql/bin/pg_ctl -D /opt/postgresql/data/pgsql -l logfile start
12、验证5432端口是否开启。
netstat -anp|grep 5432
最后更新于8天前
本文由人工编写,AI优化,转载请注明原文地址: 国产麒麟V10上从零编译PostgreSQL 16.6:ARM架构信创环境实战指南
推荐阅读
OpenVPN安装配置完整指南:从零搭建安全VPN服务器与客户端
31012024-06-21
GeoServer适配达梦数据库完整教程:从账号创建到图层发布
2082026-04-14
达梦数据库libgeos_c.dll加载失败解决方法:空间数据包安装指南
2352026-03-23
Windows系统PyTorch安装教程:CUDA 12.1环境配置与TorchText版本兼容性指南
31292024-06-21
Claude Mythos Preview称霸AI编程榜:16项全冠,昂贵且危险的性能怪兽
2432026-04-21
CodeBuddyIDE与Trae终极对决:谁是最强国产AI编程IDE?最新版本深度横评
29542025-09-25