已编辑 2 几周前 通过 ExtremeHow 编辑团队
DebianPostgreSQL数据库服务器设置SQLLinux开源系统管理命令行界面软件
翻译更新 2 几周前
PostgreSQL 是一种功能强大的开源对象-关系数据库系统。经过 15 年以上的活跃开发,其成熟的架构使其在可靠性、数据完整性和正确性方面享有很高的声誉。在本指南中,我们将引导您逐步安装和设置 Debian 系统上的 PostgreSQL。
在开始之前,您需要满足一些先决条件以确保安装顺利进行:
在安装 PostgreSQL 之前,更新软件包列表以便进行升级和新软件包的安装是很重要的。运行下列命令来更新您的软件包列表:
sudo apt update
这将从源中同步软件包索引文件。完成后,您可能希望将系统上安装的所有软件包升级到最新的可用版本:
sudo apt upgrade
在某些情况下,升级可能不是必须的,但定期更新系统是个好习惯。系统更新完成后,继续安装所需的依赖项。您可以使用以下命令安装必要的资源,如 wget(网络下载器):
sudo apt install wget
Debian 的默认仓库中包含 PostgreSQL,但相比官方 PostgreSQL 仓库通常较为陈旧。我们将添加 PostgreSQL APT 仓库以获得最新的稳定性和功能。
首先,添加 PostgreSQL 仓库的 GPG 密钥以确保下载的合法性:
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
接下来,创建一个指定 PostgreSQL 下载源的目录文件:
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
重新更新您的软件包列表以反映更改:
sudo apt update
仓库添加后,您现在可以安装 PostgreSQL 软件包了。在撰写本文时,PostgreSQL 15 是最新版本,但您可以根据需要更改版本号:
sudo apt install postgresql-15
此命令将安装核心数据库引擎和管理数据库所需的支持工具。
安装完成后,最好验证一切运作正常。您可以通过 systemd 检查 PostgreSQL 服务的状态:
sudo systemctl status postgresql
输出应显示 "Active (running)",表明 PostgreSQL 运行正常。如有必要,请启动或启用服务以确保其在启动时启动:
sudo systemctl start postgresql sudo systemctl enable postgresql
PostgreSQL 使用角色的概念来处理身份验证和权限。目前,一个名为postgres的默认角色已创建,并设置有一个默认的 PostgreSQL 数据库名为postgres。
使用以下命令切换到 postgres 账户。此账户主要用于访问数据库:
sudo -i -u postgres
登录后,使用以下命令访问 PostgreSQL 提示符:
psql
您会看到命令提示符的变化,这表明您现在正在与 PostgreSQL 系统交互。随时可以使用以下命令退出 PostgreSQL 提示符:
\q
在现实场景中,建议创建一个新的角色和数据库以满足应用的需要。以下是创建角色和数据库的方法:
创建一个新角色:
CREATE ROLE myuser WITH LOGIN PASSWORD 'mypassword';
创建一个由新创建角色拥有的新数据库:
CREATE DATABASE mydb OWNER myuser;
确保将“myuser”、“mypassword”和“mydb”替换为您想要的用户名、密码和数据库名称。
如果您需要允许远程连接到 PostgreSQL 服务器,必须编辑配置文件。这些文件位于 /etc/postgresql/15/main/ 目录中。
打开并编辑 postgresql.conf 文件:
sudo nano /etc/postgresql/15/main/postgresql.conf
找到 #listen_addresses = 'localhost' 行。取消注释并更改为 listen_addresses = '*':
listen_addresses = '*'
编辑 pg_hba.conf 文件以包括您的连接。我们建议添加以下行,以允许从网络上的任何 IP 地址连接:
sudo nano /etc/postgresql/15/main/pg_hba.conf
在底部添加以下行:
host all all 0.0.0.0/0 md5
此行允许使用任何用户名通过密码从任何 IP 地址进行连接。根据您的安全需要进行修改。
重启 PostgreSQL 服务以应用更改:
sudo systemctl restart postgresql
恭喜,您已成功在 Debian 系统上安装并配置了 PostgreSQL。您具备根据项目需要创建角色和数据库的能力,还可以启用远程连接以进行扩展访问。PostgreSQL 现在可以为您的应用程序使用。这些是基本步骤,还有很多关于自定义和安全性的内容可以根据具体需求进行调整。
请记住,PostgreSQL 是一个拥有高度可扩展性的高级综合系统,可用于许多可扩展和关键的数据库应用程序。继续查看其详细的文档和指南,以充分利用 PostgreSQL 的强大功能。
如果你发现文章内容有误, 您可以