如何在 CentOS 上安装和配置 PostgreSQL

PostgreSQL 是一个强大且高度可扩展的数据库系统,可在 Linux 和 Windows 机器上运行。这种企业级软件为创建应用程序提供了出色的可靠性和数据完整性。

PostgreSQL 是一款多功能软件,可以处理从单台机器到大型数据仓库的各种工作负载。它提供诸如具有 ACID 属性的事务、可更新视图、外键和跨平台集成等功能。

如何在 CentOS 中安装 PostgreSQL

CentOS 的工作方式略有不同,您在启动系统后不会立即获得 root 访问权限。要以 root 用户身份登录,请使用su命令。

 su

系统将以具有所有管理权限的超级用户身份登录。

步骤 1:更新和升级预安装的软件包

作为下一步的一部分,您需要更新和升级CentOS 中的现有软件包。为此,请在终端中运行以下命令:

 sudo yum check-update

输出:

在终端中键入以下命令以升级所有列出的软件包:

 sudo yum update

升级软件包后,您需要重新启动系统。使用以下命令:

 sudo reboot

系统已准备好使用新更新的软件包。是时候在你的 CentOS 机器上安装 PostgreSQL 了。

步骤 2:检查任何现有的默认版本

在进行任何新安装之前,检查 PostgreSQL 的可用默认版本非常重要。

 dnf module list postgresql

默认情况下,如果您继续安装,安装命令将安装 PostgreSQL 版本 10。

由于在编写本指南时版本 13 可用,我们将限制默认安装并使用以下命令启用最新版本的 PostgreSQL。

 sudo dnf module enable postgresql:13

步骤 3:安装 PostgreSQL 服务器包

使用上述命令更改默认版本后,是时候安装 PostgreSQL 服务器和客户端软件包了。

 sudo dnf install postgresql-server

安装服务器后,您需要初始化 PostgreSQL 数据库。要初始化,请运行以下命令:

 postgresql-setup --initdb

初始化后,启动 PostgreSQL 服务。要在系统启动时自动启用它,请使用以下命令:

 systemctl enable postgresql
systemctl start postgresql

要检查 PostgreSQL 服务的状态,请运行以下命令:

 systemctl status postgresql

如果输出显示“ Active ”,则服务已启动并正在运行。

步骤 4:配置 PostgreSQL 数据库

安装后,最好配置您的 PostgreSQL 数据库。为了保护您的帐户,请使用passwd 实用程序postgres系统用户帐户创建密码:

 passwd postgres

输出:

系统会要求您输入两次密码。确保两次输入正确的密码。

设置好用户账号密码后,使用su登录postgres账号:

 su - postgres

步骤 5:创建新用户角色

由于 PostgreSQL 的使用不仅限于一个用户,您可以自由地将更多用户添加到现有列表中。

使用createuser命令和–interactive标志添加更多用户。此外,指定要为其设置的访问类型。如果您使用postgres帐户登录,只需键入以下内容:

 createuser --interactive

如果您不想过于频繁地移入和移出系统帐户,总有一个选项可以使用 sudo 命令添加用户。

 sudo -u postgres createuser --interactive

在这两种情况下,系统都会要求您提供要添加的角色名称以及此新创建用户的访问类型。在yn之间选择超级用户角色类型。

要查看一些其他标志,您始终可以参考createuser命令手册页。

 man createuser

如何使用 PostgreSQL 创建新数据库

现在您已经在您的机器上配置了 PostgreSQL,是时候创建一个新数据库并添加新表了。

使用新角色访问 PostgreSQL 提示

一旦你添加了一个用户,显然你会想要开始使用 PostgreSQL 来发挥你的优势。但在此之前,您需要创建一个与 PostgreSQL 角色和数据库同名的用户。

如果您没有这样的用户 ID,请使用adduser命令创建一个名为test的新用户。

 sudo adduser test

使用-i-u标志作为新用户登录。

 sudo -i -u test

创建新数据库

要在 PostgreSQL 中创建新数据库,请使用以下命令:

 createdb databasename

请注意,您需要以postgres系统用户身份登录才能发出管理命令。

在数据库中创建新表

让我们创建一个新表来存储一些数据。在新表中添加字段的基本语法非常简单。

 CREATE TABLE table_name (
column_name1 col_type (field_length),
column_name2 col_type (field_length),
column_name3 col_type (field_length)
);

…其中table_name是用户设置的所需名称, column_name1column_name2等是列名, col_type是列的类型, field_length是数据结构的大小,以使值更健壮。

例如,您可以创建一个包含以下列的表格酒店

 CREATE TABLE hotel (
hotel_id serial PRIMARY KEY,
star varchar (50) NOT NULL,
paint varchar (25) NOT NULL,
location varchar(25) check (location in ('north', 'south', 'west', 'east', 'northeast', 'southeast', 'southwest', 'northwest')),
date date)
;

..其中表名是hotel ,列是hotel_idstarpaintlocationdate以及它们各自的长度和列约束。

向数据库添加值

一旦您的表结构准备就绪,您就可以向现有表中添加一些数据。使用 INSERT INTO 语句按以下格式添加数据:

 INSERT INTO table (column_name1, column_name2, column_name3) VALUES ('value1', 'value2', 'value3');

例如,向您在上面创建的酒店表中添加一行数据。

 INSERT INTO hotel (hotel, star, location, install_date) VALUES ('Plaza', 'Five', 'northwest', '2018-08-16')

在 CentOS 上配置 PostgreSQL

要配置 PostgreSQL,最好以正确的方式安装它。通过适当的配置,您可以轻松安装 PostgreSQL 并在您的系统中有效地使用它。

除了 CentOS,您还可以设置 PostgreSQL 以与其他 Linux 发行版(例如 Ubuntu)一起使用。