怎样在 Debian 11 / Debian 10 上安装 PostgreSQL

PostgreSQL(通常缩写为 Postgres)是一种对象关系数据库管理系统 (ORDBMS),强调可扩展性和标准合规性。

它经过 30 多年的积极开发和经过验证的架构,在可靠性、数据完整性和性能方面赢得了良好的声誉。

PostgreSQL 在 PostgreSQL 许可下发布,可用于 Linux、Microsoft Windows、FreeBSD、OpenBSD 和 macOS。

在这篇文章中,我们将看到如何在 Debian 11 / Debian 10 上安装 PostgreSQL。

添加 PostgreSQL 存储库

PostgreSQL 通过其专用存储库发布适用于 Debian 操作系统的软件包,并且其存储库中的软件包比 OS 存储库中可用的软件包更新。

首先,使用 apt 命令

sudo apt update

然后,为 apt 安装 HTTPS 支持以从 Internet 获取软件包。

sudo apt install -y curl apt-transport-https

现在,导入 PostgreSQL 签名密钥。

# Debian 11

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /usr/share/keyrings/postgresql-keyring.gpg

# Debian 10

curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

最后,使用以下命令将 PostgreSQL 存储库信息添加到系统中。

# Debian 11

echo "deb [signed-by=/usr/share/keyrings/postgresql-keyring.gpg] http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

# Debian 10

echo "deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

在 Debian 上安装 PostgreSQL

添加 PostgreSQL 存储库后,运行以下命令以更新存储库索引。

sudo apt update

然后,根据您要安装的 PostgreSQL 版本使用以下命令安装 PostgreSQL。

# PostgreSQL 13

sudo apt install -y postgresql-13

# PostgreSQL 12

sudo apt install -y postgresql-12

现在,PostgreSQL 服务将启动并运行。 您可以使用以下命令检查服务的状态。

sudo systemctl status postgresql

输出:

 postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Wed 2021-09-15 14:19:30 CDT; 42s ago
 Main PID: 3759 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 2343)
   Memory: 0B
   CGroup: /system.slice/postgresql.service

Sep 15 14:19:30 debian.itzgeek.local systemd[1]: Starting PostgreSQL RDBMS...
Sep 15 14:19:30 debian.itzgeek.local systemd[1]: Started PostgreSQL RDBMS.

配置 PostgreSQL 服务器

默认情况下,PostgreSQL 侦听本地主机 (127.0.0.1),您可能并不总是想要它,因为外部应用程序可能需要连接到数据库。 因此,我们将配置 PostgreSQL 以侦听系统 IP 地址。

# PostgreSQL 13

sudo nano /etc/postgresql/13/main/postgresql.conf

# PostgreSQL 12

sudo nano /etc/postgresql/12/main/postgresql.conf

设置 listen_addresses* 或者 <IPAddress>.

广告

listen_addresses = '192.168.0.10'

重启 PostgreSQL 服务。

sudo systemctl restart postgresql

您现在可以使用 netstat 命令来确认 PostgreSQL 是否在端口 5432 上侦听。

sudo netstat -antup | grep 5432

输出:

tcp        0      0 192.168.0.10:5432       0.0.0.0:*               LISTEN      5265/postgres

: 在 Debian 上找不到 netstat 命令 – 快速修复

访问 PostgreSQL

要管理 PostgreSQL 数据库,您需要作为 postgres (Linux 用户)然后必须使用 psql 命令。

sudo -u postgres psql

输出:

[email protected]:~$ psql
psql (13.4 (Debian 13.4-1.pgdg100+1))
Type "help" for help.

postgres=#

psql shell,运行下面的命令来改变 postgres 用户(数据库管理员密码。

postgres=# password

或者

postgres=# password postgres

结论

就这样。 我希望您已经学会了如何在 Debian 11 / Debian 10 上安装 PostgreSQL。