网站搜索

如何在 RHEL 8 中安装 PostgreSQL


PostgreSQL,也称为Postgres,是一个功能强大的开源对象关系数据库管理系统,它使用和扩展 SQL 语言,并结合众多可安全保存和扩展的功能最复杂的数据工作负载。

PostgreSQL 附带了许多功能,旨在帮助程序员开发应用程序、管理员保护数据完整性和创建容错环境,并帮助您管理数据,无论数据集有多大或多小。

除了免费和开源之外,PostgreSQL 还具有极强的可扩展性。例如,您可以添加自己的数据类型、开发自定义函数,甚至可以使用各种编程语言编写代码,而无需重新编译数据库!

要求:

  1. RHEL 8 最小化安装
  2. 启用 RedHat 订阅的 RHEL 8
  3. 具有静态 IP 地址的 RHEL 8

在本文中,我们将解释如何在 RHEL 8 Linux 发行版中安装、保护和配置 PostgreSQL 数据库管理系统。

安装 PostgreSQL 软件包

1.PostgreSQL包含在RHEL 8的默认存储库中,可以使用以下dnf命令进行安装,该命令将安装PostgreSQL服务器10、库和客户端二进制文件。

dnf install @postgresql

注意:要在 RHEL 8 系统上安装 PostgreSQL 11 软件包,您需要安装 PostgreSQL RPM 存储库,其中包含许多不同的软件包,例如 PostgreSQL 服务器、客户端二进制文件和第三方附加组件。

dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf update
dnf install postgresql11-server postgresql11  postgresql11-contrib

初始化 PostgreSQL 数据库

2. 安装 PostgreSQL 软件包后,下一步是使用 /usr/ 初始化新的 PostgreSQL 数据库集群bin/postgresql-setup 实用程序,如下。

/usr/bin/postgresql-setup --initdb

3. 现在 PostgreSQL 集群已初始化,您现在需要启动 PostgreSQL 服务,然后启用它在系统启动时自动启动,并使用以下命令验证其状态systemctl 命令。

systemctl start postgresql
systemctl enable postgresql
systemctl status postgresql

保护和配置 PostgreSQL 数据库

在本节中,我们将展示如何保护 Postgres 用户帐户和管理用户帐户的安全。然后我们将介绍如何配置 PostgreSQL,特别是如何设置客户端身份验证。

4. 使用 passwd 实用程序为 postgres 系统用户帐户创建密码,如下所示。

passwd postgres

5. 接下来,切换到 postgres 系统用户帐户,并通过为其创建密码来保护 PostgreSQL 管理数据库用户帐户(请记住设置一个强大且安全的密码)。

su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'adminpasswdhere123';"

6.各种PostgreSQL配置文件可以在/var/lib/pgsql/data/目录中找到。要查看目录结构,可以使用tree(使用dnf install tree安装)命令。

tree -L 1 /var/lib/pgsql/data/

主服务器配置文件是/var/lib/pgsql/data/postgresql.conf。可以使用 /var/lib/pgsql/data/pg_hba.conf 配置客户端身份验证。

7.接下来,我们看一下如何配置客户端身份验证。 PostgreSQL数据库系统支持不同类型的身份验证,包括基于密码的身份验证。在基于密码的身份验证下,您可以使用以下方法之一:md5、crypt 或password(以明文形式发送密码)。

尽管上述密码身份验证方法的工作方式类似,但它们之间的主要区别在于:用户输入密码时(在服务器上)存储并通过连接发送的方式。

为了防止密码被攻击者嗅探并避免将密码以明文形式存储在服务器上,建议使用md5,如图所示。现在打开客户端身份验证配置文件。

vi /var/lib/pgsql/data/pg_hba.conf

并查找以下行并将身份验证方法更改为 md5

host    all             all             127.0.0.1/32            md5
host    all             all		::1/128                 md5

8. 现在重新启动 Postgres 服务以应用配置中的最新更改。

systemctl reload postgresql

9. 在此阶段,您的 PostgreSQL 数据库服务器安装现已安全。您可以切换到 postgres 帐户并开始使用 PostgreSQL。

su - postgres
psql

您可以阅读 PostgreSQL 官方文档(记住选择您所安装版本的文档)来了解 PostgreSQL 的工作原理以及如何使用它来开发应用程序。

目前为止就这样了!在本指南中,我们展示了如何在 RHEL 8 中安装、保护和配置 PostgreSQL 数据库管理系统。请记住,您可以通过下面的反馈表向我们提供反馈。


版权所有。 © Linux-Console.net • 2019-2024