如何在 Ubuntu 上安装和配置 PostgreSQL

在本教程中,您将学习如何在 Ubuntu Linux 上安装和使用开源数据库 PostgreSQL。

PostgreSQL (或 Postgres)是一个功能强大、免费且开源的关系数据库管理系统(关系型数据库管理系统) 在可靠性、功能稳健性和性能方面享有盛誉。 它旨在处理任何规模的各种任务。 它是跨平台的,默认数据库 macOS 服务器.

如果您喜欢简单易用的 SQL 数据库管理器,那么 PostgreSQL 可能正是适合您的工具。 它支持 SQL 标准并提供附加功能,同时还可以由用户进行大量扩展,因为用户可以添加数据类型、函数和做更多事情。

之前我讨论了在 Ubuntu 上安装 MySQL。 在本文中,我将向您展示如何安装和配置 PostgreSQL,以便您可以随时使用它来满足您的任何需求。

在 Ubuntu 上安装 PostgreSQL

PostgreSQL 在 Ubuntu 主存储库中可用。 但是,与许多其他开发工具一样,它可能不是最新版本。

首先使用终端中的 apt 命令检查 Ubuntu 存储库中可用的 PostgreSQL 版本:

apt show postgresql

在我的 Ubuntu 18.04 中,它显示 PostgreSQL 的可用版本是版本 10(10+190 表示版本 10),而 PostgreSQL 版本 11 已经发布。

Package: postgresql Version: 10+190 Priority: optional Section: database Source: postgresql-common (190) Origin: Ubuntu

根据这些信息,您可以决定是要安装 Ubuntu 提供的版本还是要获取最新发布的 PostgreSQL 版本。

我将向您展示这两种方法。

方法 1:从 Ubuntu 存储库安装 PostgreSQL

在终端中,使用以下命令安装 PostgreSQL

sudo apt update sudo apt install postgresql postgresql-contrib

Enter 询问您的密码,您应该在几秒钟/几分钟内安装它,具体取决于您的互联网速度。 说到这,请随意检查 Ubuntu 中的各种网络带宽。

什么是 postgresql-contrib?

postgresql-contrib 或 contrib 包包含一些不属于核心 PostgreSQL 包的附加实用程序和功能。 在大多数情况下,最好将 contrib 包与 PostgreSQL 核心一起安装。

方法2:在Ubuntu中安装最新版本的PostgreSQL 11

要安装 PostgreSQL 11,您需要在 sources.list 中添加官方 PostgreSQL 存储库,添加其证书,然后从那里安装它。

别担心,这并不复杂。 只需按照以下步骤操作。

首先添加 GPG 密钥:

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

现在使用以下命令添加存储库。 如果您使用的是 Linux Mint,则必须手动替换 Mint 发行版所基于的 Ubuntu 版本的`lsb_release -cs`。

sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'

现在一切都准备好了。 使用以下命令安装 PostgreSQL:

sudo apt update sudo apt install postgresql postgresql-contrib

PostgreSQL GUI 应用程序

您还可以安装 GUI 应用程序 (pgAdmin) 来管理 PostgreSQL 数据库:

sudo 安装 pgadmin4

配置 PostgreSQL

你可以检查是否 PostgreSQL 通过执行运行:

service postgresql status

通过 服务 命令你也可以 开始, 停止 或者 重新开始 PostgreSQL. 输入 服务postgresql 并按下 Enter 应该输出所有选项。 现在,到用户身上。

默认情况下,PostgreSQL 创建一个具有所有权限的特殊用户 postgres。 要实际使用 PostgreSQL,您必须首先登录该帐户:

sudo su postgres

您的提示应更改为类似于:

[email protected]:/home/ubuntu$ 

现在,运行 PostgreSQL 外壳 使用实用程序 psql

psql

您应该被提示:

postgress=# 

你可以输入 q退出? 为了 帮助.

要查看所有现有表,请输入:

l

输出将与此类似(按下键 q 退出此视图):

你可以显示 PostgreSQL 用户

您可以更改任何用户的密码(包括 postgres) 和:

ALTER USER postgres WITH PASSWORD 'my_password';

笔记: 代替 postgres 用户名和 我的密码 用想要的密码。 另外,别忘了 ; (半栏) 在每个语句之后。

建议您创建另一个用户(使用默认用户是不好的做法) postgres 用户)。 为此,请使用以下命令:

CREATE USER my_user WITH PASSWORD 'my_password';

如果你跑 , 但是你会看到 我的用户 还没有属性。 让我们添加 超级用户 对它:

ALTER USER my_user WITH SUPERUSER;

你可以 删除用户 和:

DROP USER my_user;

登录 作为另一个用户,退出提示(q) 然后使用命令:

psql -U my_user

您可以使用以下命令直接连接到数据库 -d 旗帜:

psql -U my_user -d my_db

您应该像调用另一个现有用户一样调用 PostgreSQL 用户。 例如,我的用途是 ubuntu. 要登录,从我使用的终端:

psql -U ubuntu -d postgres

笔记: 您必须指定一个数据库(默认情况下,它会尝试将您连接到与您登录的用户名称相同的数据库)。

如果您有错误:

psql: FATAL:  Peer authentication failed for user "my_user"

确保您以正确的用户身份登录并编辑 /etc/postgresql/11/main/pg_hba.conf 具有管理员权限:

sudo vim /etc/postgresql/11/main/pg_hba.conf 

笔记: 代替 11 使用您的版本(例如 10)。

在这里,替换行:

local   all             postgres                                peer

和:

local   all             postgres                                md5

然后重启 PostgreSQL

sudo service postgresql restart

使用 PostgreSQL 和使用任何其他的一样 SQL 类型数据库。 我不会详细介绍具体的命令,因为本文是关于让您开始使用工作设置的。 然而,这里有一个 非常有用的要点 供参考! 此外,手册页(人 psql) 和 文件 很有帮助。

包起来

阅读本文有望引导您完成在 Ubuntu 系统上安装和准备 PostgreSQL 的过程。 如果你是 SQL 新手,你应该阅读这篇文章来了解基本的 SQL 命令:

如果您有任何问题或疑问,请随时在评论部分提出。