Redrock Postgres 文档
主页 切换暗/亮/自动模式 切换暗/亮/自动模式 切换暗/亮/自动模式 返回首页

RPM 软件包安装

RPM 是一种软件包格式,它最早是由 Red Hat 开发和发布,并广泛使用于 Red Hat Linux 的发行版及其衍生版本,如:CentOS Linux,Oracle Linux。Redrock Postgres 提供了 RPM 格式的软件包,您可以在 Red Hat 和 CentOS 上面下载进行安装。

安装软件包

安装检查

使用您的root帐户登录到主机,并运行以下命令来查询已安装的软件包,确保没有安装过 postgresql 相关的软件包:

# rpm -qa | grep postgresql

安装 Redrock Postgres

下载 Linux 的 RPM 软件包,并执行以下命令进行安装:

# tar xf redrock-<version>.linux.x86_64-rpm.tar.gz
# cd redrock-<version>.linux.x86_64-rpm
# rpm -ivh redrock-libs-<version>.x86_64.rpm
# rpm -ivh redrock-client-<version>.x86_64.rpm
# rpm -ivh redrock-server-<version>.x86_64.rpm

在上面的命令中,version 的值表示 Redrock Postgres 的版本号,例如:2.2-1

您还可以根据您的需要安装其他软件包。

RPM 软件包

表 1. Redrock Postgres RPM 软件包

包名称 概述
redrock-client 主要客户端和库以及文档
redrock-server 服务器可执行文件和数据文件
redrock-libs 客户端共享库
redrock-docs 额外的文档,例如教程文件
redrock-contrib 插件汇总以及选定的二进制文件
redrock-plscheme PL/Scheme 过程语言

安装布局

使用 RPM 软件包的标准安装 Redrock Postgres 会导致在系统目录下创建文件和资源,如下表所示。

表 2. Redrock Postgres 安装布局

文件或资源 位置
可执行文件 /usr/pgsql-12/bin
程序库 /usr/pgsql-12/lib
服务端和插件文档 /usr/pgsql-12/doc
数据 /var/lib/pgsql/12/data
模板和其他共享数据 /usr/pgsql-12/share

安装还会在系统上创建一个名为postgres的用户和一个名为postgres的组。

安装设置

安装软件包后,需要初始化和配置数据库。

数据目录

PostgreSQL 数据目录包含数据库的所有数据文件。环境变量PGDATA用于指定数据目录路径。

默认数据目录为:/var/lib/pgsql/12/data

更改数据目录

如果不想使用默认的数据目录,可以进入到一个自定义的挂载目录(例如:/u01),然后创建一个postgres用户为拥有者的文件夹pgdata

# cd /u01
# mkdir pgdata
# chown postgres:postgres pgdata

然后,编辑 postgresql 服务:

# systemctl edit postgresql.service

进入到自定义的数据目录,该目录应该具有主机中大部分的可用磁盘空间,复制该目录路径并粘贴到服务文件中:

[Service]
Environment=PGDATA=/u01/pgdata

初始化数据

执行类似如下的命令,在PGDATA中初始化数据库:

# /usr/pgsql-12/bin/postgresql-setup initdb

设置开机启动

如果您希望 PostgreSQL 在操作系统开机启动时自动运行,请执行以下操作:

# systemctl enable postgresql.service

服务器控制

要控制数据库服务,请使用:

# systemctl <command> postgresql.service

其中的 command 可以为:

  • enable : 启用开机启动
  • start : 启动数据库
  • stop : 停止数据库
  • restart : 重启数据库; 主要用于重要参数的变更生效
  • reload : 在数据库运行过程中更新配置参数

例如,要启动数据库服务,请使用:

# systemctl start postgresql.service

安装后配置调整

修改数据目录下的pg_hba.conf文件,以定义从网络中其他主机访问 PostgreSQL 服务器使用的访问控制策略,修改 IPv4 网络访问控制策略:从本机地址 127.0.0.1 更改为接受所有主机访问请求。找到下面行:

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

并将其更改为:

# IPv4 local connections:
host    all             all             0.0.0.0/0            md5

修改数据目录下的postgresql.conf文件,通过取消注释以下参数行并设置参数值为 * 而不是 localhost 来允许来自所有主机的访问连接:

listen_addresses = '*'

重启数据库服务以更新配置参数:

# systemctl restart postgresql.service

在生产环境中,还应设置 TLS 安全通信,并且应考虑配置数据复制或基于快照的备份。有关这些配置,请参阅 PostgreSQL 在线文档。