AnolisOS 8.8 上安装 PostgreSQL 14.7

前面我们已经初始化搭建了一个基础的 AnolisOS 8.8 环境,下面我们需要在这个环境上部署我们的数据库服务 PostgreSQL。下面是完整的搭建过程。

[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# rpm -ivh ./*.rpm --nodeps --force
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:glibc-all-langpacks-2.28-251.0.1.################################# [  1%]
   2:glibc-gconv-extra-2.28-251.0.1.an################################# [  3%]
   3:glibc-langpack-en-2.28-251.0.1.an################################# [  4%]
   4:glibc-common-2.28-251.0.1.an8.2  ################################# [  6%]
   5:glibc-2.28-251.0.1.an8.2         ################################# [  7%]
   6:libselinux-2.9-8.an8             ################################# [  8%]
   7:zlib-1.2.11-25.0.1.an8           ################################# [ 10%]
   8:libgcc-8.5.0-20.0.3.an8          ################################# [ 11%]
   9:libstdc++-8.5.0-20.0.3.an8       ################################# [ 13%]
  10:xz-libs-5.4.4-2.an8              ################################# [ 14%]
  11:libxml2-2.9.7-18.0.3.an8         ################################# [ 15%]
  12:cmake-filesystem-3.26.5-1.0.2.an8################################# [ 17%]
  13:openssl-1:1.1.1k-12.0.1.an8      ################################# [ 18%]
  14:openssl-pkcs11-0.4.10-3.0.1.an8  ################################# [ 19%]
  15:openssl-libs-1:1.1.1k-12.0.1.an8 ################################# [ 21%]
  16:krb5-libs-1.18.2-26.0.2.an8      ################################# [ 22%]
  17:zlib-devel-1.2.11-25.0.1.an8     ################################# [ 24%]
  18:glibc-headers-2.28-251.0.1.an8.2 ################################# [ 25%]
  19:glibc-devel-2.28-251.0.1.an8.2   ################################# [ 26%]
  20:libxcrypt-devel-4.1.1-6.0.3.an8  ################################# [ 28%]
  21:libgpg-error-devel-1.42-5.0.1.an8################################# [ 29%]
  22:cmake-rpm-macros-3.26.5-1.0.2.an8################################# [ 31%]
  23:libgcrypt-devel-1.8.5-7.0.1.an8_6################################# [ 32%]
  24:libkadm5-1.18.2-26.0.2.an8       ################################# [ 33%]
  25:opencryptoki-libs-3.22.0-3.an8   ################################# [ 35%]
  26:openssl-ibmpkcs11-1.0.2-1.0.1.an8################################# [ 36%]
  27:libxslt-1.1.32-6.0.1.an8         ################################# [ 38%]
  28:xz-devel-5.4.4-2.an8             ################################# [ 39%]
  29:libxml2-devel-2.9.7-18.0.3.an8   ################################# [ 40%]
  30:libasan-8.5.0-20.0.3.an8         ################################# [ 42%]
  31:libstdc++-devel-8.5.0-20.0.3.an8 ################################# [ 43%]
  32:libubsan-8.5.0-20.0.3.an8        ################################# [ 44%]
  33:cpp-8.5.0-20.0.3.an8             ################################# [ 46%]
  34:isl-0.16.1-6.0.1.an8             ################################# [ 47%]
  35:libgomp-8.5.0-20.0.3.an8         ################################# [ 49%]
  36:gcc-8.5.0-20.0.3.an8             ################################# [ 50%]
  37:libuv-1:1.42.0-1.an8             ################################# [ 51%]
  38:m4-1.4.18-7.0.1.an8              ################################# [ 53%]
  39:make-1:4.2.1-11.0.1.an8          ################################# [ 54%]
  40:pcre2-utf16-10.32-3.0.1.an8_6    ################################# [ 56%]
  41:pcre2-utf32-10.32-3.0.1.an8_6    ################################# [ 57%]
  42:pcre2-devel-10.32-3.0.1.an8_6    ################################# [ 58%]
  43:uuid-1.6.2-43.0.1.an8            ################################# [ 60%]
  44:ncurses-base-6.1-10.20180224.0.1.################################# [ 61%]
  45:ncurses-libs-6.1-10.20180224.0.1.################################# [ 63%]
  46:cmake-data-3.26.5-1.0.2.an8      ################################# [ 64%]
  47:cmake-3.26.5-1.0.2.an8           ################################# [ 65%]
  48:ncurses-c++-libs-6.1-10.20180224.################################# [ 67%]
  49:ncurses-devel-6.1-10.20180224.0.1################################# [ 68%]
  50:readline-7.0-10.0.1.an8          ################################# [ 69%]
  51:libverto-devel-0.3.2-2.an8       ################################# [ 71%]
  52:libsepol-devel-2.9-3.0.1.an8     ################################# [ 72%]
  53:libselinux-devel-2.9-8.an8       ################################# [ 74%]
  54:libcom_err-devel-1.46.0-1.0.1.an8################################# [ 75%]
  55:keyutils-libs-devel-1.5.10-9.an8 ################################# [ 76%]
  56:krb5-devel-1.18.2-26.0.2.an8     ################################# [ 78%]
  57:openssl-devel-1:1.1.1k-12.0.1.an8################################# [ 79%]
  58:readline-devel-7.0-10.0.1.an8    ################################# [ 81%]
  59:ncurses-6.1-10.20180224.0.1.an8  ################################# [ 82%]
  60:uuid-devel-1.6.2-43.0.1.an8      ################################# [ 83%]
  61:flex-2.6.4-9.an8                 ################################# [ 85%]
  62:gcc-c++-8.5.0-20.0.3.an8         ################################# [ 86%]
  63:libxslt-devel-1.1.32-6.0.1.an8   ################################# [ 88%]
  64:openssl-ibmpkcs11-doc-1.0.2-1.0.1################################# [ 89%]
  65:openssl-pkcs11-doc-0.4.10-3.0.1.a################################# [ 90%]
  66:openssl-perl-1:1.1.1k-12.0.1.an8 ################################# [ 92%]
  67:python3-libxml2-2.9.7-18.0.3.an8 ################################# [ 93%]
  68:xz-5.4.4-2.an8                   ################################# [ 94%]
  69:libselinux-utils-2.9-8.an8       ################################# [ 96%]
  70:python3-libselinux-2.9-8.an8     ################################# [ 97%]
  71:yum-utils-4.0.21-23.an8          ################################# [ 99%]
  72:libfl-static-2.6.4-9.an8         ################################# [100%]
[root@localhost src]#

[root@localhost src]# tar -zxvf postgresql-14.7.tar.gz
[root@localhost src]# cd postgresql-14.7/
[root@localhost postgresql-14.7]# ./configure --prefix=/usr/local/pgsql-14
[root@localhost postgresql-14.7]# make world
[root@localhost postgresql-14.7]# make install-world

添加 postgres 用户
[root@localhost postgresql-14.7]# groupadd postgres
[root@localhost postgresql-14.7]# useradd -d /home/postgres -g postgres postgres

创建数据文件目录并修改其权限
[root@localhost postgresql-14.7]# mkdir -p /usr/local/pgsql-14/data
[root@localhost postgresql-14.7]# chown -R postgres:postgres /usr/local/pgsql-14/

配置环境变量
[root@localhost postgresql-14.7]# vi /etc/profile
export PGHOME=/usr/local/pgsql-14
export PGDATA=/usr/local/pgsql-14/data
export PATH="$PGHOME/bin:$PATH"
export MANPATH=$PGHOME/share/man:$MANPATH
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
[root@localhost postgresql-14.7]# source /etc/profile
说明:这里环境变量的配置也有很多比较喜欢在 postgres 用户的家目录下进行配置。

[root@localhost postgresql-14.7]# su - postgres
[postgres@localhost ~]$ vi .bash_profile
export PGHOME=/usr/local/pgsql-14
export PGDATA=/usr/local/pgsql-14/data
export PATH="$PGHOME/bin:$PATH"
export MANPATH=$PGHOME/share/man:$MANPATH
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
[postgres@localhost ~]$ source .bash_profile

初始化
[postgres@localhost ~]$ cd /usr/local/pgsql-14/data/
[postgres@localhost data]$ ../bin/initdb -D /usr/local/pgsql-14/data/
[postgres@localhost data]$ ../bin/pg_ctl -D /usr/local/pgsql-14/data/ -l logfile start
[postgres@localhost data]$ psql
postgres=# alter user postgres with password 'Anolis@2025';
说明:因为我们配置了 pg_hba.conf 是 trust 模式,所以这里不需要输入密码

修改配置文件
说明:pg_hba.conf 是控制访问的 postgresql.conf 是数据库自身的配置文件,这里我不详细讲数据库修改了哪些配置文件,在下一篇文章中我详细讲一下修改了哪些配置参数。
[postgres@localhost data]$ vi pg_hba.conf
[postgres@localhost data]$ vi postgresql.conf

创建归档目录
[postgres@localhost data]$ mkdir -p /usr/local/pgsql-14/data/wal_archive

重启数据库服务
[postgres@localhost data]$ ../bin/pg_ctl restart -D /usr/local/pgsql-14/data/

配置免密登录
[postgres@localhost data]$ cd ~
[postgres@localhost ~]$ vi .pgpass
127.0.0.1:5432:*:postgres:Anolis@2025
[postgres@localhost ~]$ chmod 0600 ./.pgpass
说明:这个文件的格式是 hostname:port:database:username:password

验证免密登录
[postgres@localhost ~]$ psql -h 127.0.0.1 -U postgres
[postgres@localhost ~]$ psql -h 192.168.30.140 -U postgres
Password for user postgres:
说明:这里 192.168.30.140 是我本机的实体 IP 地址,可以从上面的测试中看到,在 127.0.0.1 的情况下是不需要输入密码的,但是如果换成实体的 IP 是需要输入密码的,那么如果在 .pgpass 中也配置了本机实体的 IP,再次登录是否也需要密码呢?

备注:下一篇我将介绍关于数据库的配置文件 pg_hba.conf 和 postgresql.conf

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值