CentOS默认PostgreSQL版本是9,要安装高版本需要做一些额外工作,现记录一下安装过程。
步骤1:将PostgreSQL Yum存储库添加到CentOS
$ yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
步骤2:在CentOS上安装PostgreSQL 13
$ yum -y install postgresql13-server
步骤3:初始化并启动数据库服务
PostgreSQL默认数据库目录保存在/var/lib/pgsql/13/data下,我们往往需要将数据保存在别的挂载了专门的数据卷目录,因此初始化数据时需要额外做一些工作。
$ su - postgres
$ /usr/pgsql-13/bin/initdb --auth-host=scram-sha-256 --encoding=UTF8 -D /data/pgsql
做为这些操作仅仅是在/data/pgsql目录下生成了初始系统数据库,我们还需要修改postgresql-13服务的PGDATA环境变量修改为/data/pgsql
$ vim /usr/lib/systemd/system/postgresql-13.service
$ systemctl daemon-reload
$ systemctl start postgresql-13
$ systemctl status postgresql-13
做完这些工作之后,pgsql服务应该正常启动了,最后一步操作可以看到数据库服务启动情况,请注意其中的输出信息,注意其中的数据目录是否正确。如果不正确请重新执行以下命令:
$ systemctl stop postgresql-13
$ systemctl daemon-reload
$ systemctl start postgresql-13
步骤4:设置PostgreSQL管理员用户密码
$ su - postgres
$ psql -c "alter user postgres with password 'StrongDBPassword'"
步骤5:启用远程数据库连接(可选)
编辑档案 /data/pgsql/postgresql.conf 监听地址为“*“所有接口。
$ vim /data/pgsql/postgresql.conf
# 搜索listen_addresses,默认内容为注释内容,可新增一行
listen_addresses = '*'
配置PostgreSQL接受远程连接
$ vim /data/pgsql/pg_hba.conf
# Accept from trusted subnet (Recommended setting)
host all all 172.20.11.0/24 scram-sha-256
以上子网掩码根据自己情况修改,通常修改为你代码部署的服务器局域网段!