619 字
3 分钟
PostgreSQL安装

安装 PostgreSQL#

打开终端并运行以下命令来更新系统的包列表

sudo apt update && sudo apt upgrade -y

安装 PostgreSQL 和相关工具

Terminal window
sudo apt install postgresql postgresql-contrib

安装完成后,PostgreSQL 服务会自动启动。你可以通过以下命令检查服务状态:

Terminal window
sudo systemctl status postgresql

如果服务没有启动,可以使用以下命令启动它:

Terminal window
sudo systemctl start postgresql

配置 PostgreSQL 开启远程登录#

默认情况下,PostgreSQL 仅允许本地连接(localhost)。要允许远程连接,需要进行以下配置:

修改 PostgreSQL 配置文件#

打开 postgresql.conf 配置文件:

Terminal window
sudo vim /etc/postgresql/14/main/postgresql.conf

(根据你安装的 PostgreSQL 版本,文件路径可能有所不同。)

找到并修改 listen_addresses 配置项:

listen_addresses = '*'

这样,PostgreSQL 将监听所有的 IP 地址。保存文件并退出编辑器。

修改客户端认证配置#

打开 pg_hba.conf 配置文件:

Terminal window
sudo vim /etc/postgresql/14/main/pg_hba.conf

在文件的末尾添加一行,允许特定 IP 地址范围的远程连接(例如,允许从任何 IP 地址连接):

Terminal window
host all all 0.0.0.0/0 sha256

这样配置后,所有 IP 地址都可以通过 SHA256 密码认证方式连接到数据库。如果你只想允许特定的 IP 地址访问,可以将 0.0.0.0/0 替换为你的 IP 地址(例如 192.168.1.100/32)。

重启 PostgreSQL 服务#

配置完成后,需要重启 PostgreSQL 服务以使配置生效:

Terminal window
sudo systemctl restart postgresql

配置防火墙#

如果你的系统启用了防火墙,确保 PostgreSQL 的端口(默认是 5432)已经打开,以允许远程连接。

允许 5432 端口通过 UFW 防火墙:

Terminal window
sudo ufw allow 5432/tcp

检查防火墙规则:

Terminal window
sudo ufw status

创建用于远程连接的 PostgreSQL 用户#

如果你还没有为远程访问创建 PostgreSQL 用户,可以通过以下命令创建一个新用户并授权:

进入 PostgreSQL 命令行:

Terminal window
sudo -u postgres psql

创建一个新用户(替换 your_useryour_password 为你自己的用户名和密码):

Terminal window
CREATE USER your_user WITH PASSWORD 'your_password';

给新用户赋予足够的权限(例如授予超级用户权限):

Terminal window
ALTER USER your_user WITH SUPERUSER;

退出 PostgreSQL 命令行:

Terminal window
\q

测试远程连接#

使用数据库客户端(例如 DBeaver 或 psql)从远程机器连接 PostgreSQL:

Terminal window
psql -h <server_ip> -U your_user -d your_database

如果你配置正确,应该能够从远程机器成功连接到 PostgreSQL 数据库。

这样,你就完成了 PostgreSQL 的安装和配置,允许远程连接。

查看日志#

sudo tail -f /var/log/postgresql/postgresql-*-main.log
PostgreSQL安装
https://yumenya.com/posts/2026-8-19-0/
作者
Sakana Vollerei
发布于
2026-08-19
许可协议
CC BY-NC-SA 4.0