银河麒麟10 aarch64 系统上通过源码离线安装 PostgreSQL 16 一. 查看服务器系统与架构[roothost ~] uname -a # 该命令会输出系统的基本情况包括操作系统、主机名、内核版本、硬件信息等等 Linux host 4.19.90-89.11.v2401.ky10.aarch64 #1 SMP Thu Apr 25 18:20:10 CST 2024 aarch64 aarch64 aarch64 GNU/Linux [roothost ~] cat /etc/os-release # 该命令会输出包含系统版本号和其他发行版信息的文件内容 NAMEKylin Linux Advanced Server VERSIONV10 (Halberd) IDkylin VERSION_IDV10 PRETTY_NAMEKylin Linux Advanced Server V10 (Halberd) ANSI_COLOR0;31二.安装编译依赖1.查看现有依赖版本命令echo GCC gcc --version | head -n 1 echo G g --version | head -n 1 echo Readline-devel rpm -q readline-devel echo Zlib-devel rpm -q zlib-devel echo OpenSSL-devel rpm -q openssl-devel echo PCRE-devel rpm -q pcre-devel2.查看现有依赖版本命令日志[roothost ~]# rpm -q pcre-devel pcre-devel-8.44-2.p02.ky10.aarch64 [roothost ~]# echo GCC gcc --version | head -n 1 GCC gcc (GCC) 7.3.0 [roothost ~]# echo G g --version | head -n 1 G g (GCC) 7.3.0 [roothost ~]# echo Readline-devel rpm -q readline-devel Readline-devel package readline-devel is not installed [roothost ~]# echo Zlib-devel rpm -q zlib-devel Zlib-devel zlib-devel-1.2.11-23.ky10.aarch64 [roothost ~]# echo OpenSSL-devel rpm -q openssl-devel OpenSSL-devel openssl-devel-1.1.1f-31.p23.ky10.aarch64 [roothost ~]# echo PCRE-devel rpm -q pcre-devel PCRE-devel pcre-devel-8.44-2.p02.ky10.aarch64 [roothost ~]#3. 如果缺少依赖去官网下载依赖包下载链接银河麒麟系统以及中标麒麟CS2C官方的软件仓库地址 最权威的官方软件源https://update.cs2c.com.cn/NS/V10/V10SP1/os/adv/lic/base/aarch64/Packages/之前缺失下面有 readlinereadline-7.0-13.ky10.aarch64.rpm 24-Aug-2020 10:39 135Kreadline-devel-7.0-13.ky10.aarch64.rpm 24-Aug-2020 10:39 198Kreadline-help-7.0-13.ky10.noarch.rpm 24-Aug-2020 10:39 127Kncurses-6.1-14.ky10.aarch64.rpm 24-Aug-2020 10:36 921Kncurses-base-6.1-14.ky10.noarch.rpm 24-Aug-2020 10:36 53Kncurses-devel-6.1-14.ky10.aarch64.rpm 24-Aug-2020 10:36 657Kncurses-help-6.1-14.ky10.aarch64.rpm 24-Aug-2020 10:36 719Kncurses-libs-6.1-14.ky10.aarch64.rpm 24-Aug-2020 10:36 273K[roothost rpm_ky_aarch64]# rpm -Uvh --nodeps --oldpackage \ readline-devel-7.0-13.ky10.aarch64.rpm \ ncurses-devel-6.1-14.ky10.aarch64.rpm warning: readline-devel-7.0-13.ky10.aarch64.rpm: Header V4 RSA/SHA1 Signature, key ID 7a486d9f: NOKEY Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:ncurses-devel-6.1-14.ky10 ################################# [ 50%] 2:readline-devel-7.0-13.ky10 ################################# [100%] [roothost rpm_ky_aarch64]#三. 下载安装包解压并编译安装1.下载安装包postgresql-16.8 源码包下载# 官网 安装包 自己选系统版本 https://www.postgresql.org/download/ # 官网源码地址 自己选版本 https://www.postgresql.org/ftp/source/ # 官网源码 v16.8 https://ftp.postgresql.org/pub/source/v16.8/postgresql-16.8.tar.gz2.解压并编译安装# 解压源码包 tar -zxvf postgresql-16.8.tar.gz cd postgresql-16.8 # 配置编译选项指定安装目录 ./configure --prefix/usr/local/pgsql # 编译并安装 make -j$(nproc) make install四.创建用户与数据目录# 创建用户组和用户 groupadd postgres useradd -g postgres -d /home/postgres -s /bin/bash postgres passwd postgres # 为系统用户设置密码 Jxzx#20260630 # 创建数据目录和日志目录并赋权 mkdir -p /usr/local/pgsql/data mkdir -p /usr/local/pgsql/log chown -R postgres:postgres /usr/local/pgsql五.配置环境变量su - postgres cat ~/.bash_profile EOF export PGHOME/usr/local/pgsql export PGDATA/usr/local/pgsql/data export PATH$PGHOME/bin:$PATH:. export LD_LIBRARY_PATH$PGHOME/lib:$LD_LIBRARY_PATH EOF # 使环境变量生效 source ~/.bash_profile六. 修改配置文件如需远程连接​​​​​#编辑数据目录下的配置文件以允许远程访问 cd /usr/local/pgsql/data/ vi postgresql.conf * **修改 postgresql.conf** 找到 listen_addresses取消注释并修改为 listen_addresses *。 vi pg_hba.conf * **修改 pg_hba.conf** 在文件末尾添加一行允许所有 IP 使用密码md5连接 host all all 0.0.0.0/0 md5七. 启动服务与验证手动启动pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/log/pg_server.log start