温馨提示×

PostgreSQL Debian如何配置

小樊
51
2026-08-02 05:30:04
栏目: 云计算

Debian 上配置 PostgreSQL,通常包括 安装、初始化、远程访问、用户/数据库管理、性能与自启动 等步骤。下面给你一套从零到可用的完整配置流程(适用于 Debian 10/11/12,PostgreSQL 13/15 通用)。


一、安装 PostgreSQL

1️⃣ 更新系统

sudo apt update
sudo apt upgrade -y

2️⃣ 安装 PostgreSQL

sudo apt install -y postgresql postgresql-client

安装完成后,PostgreSQL 会自动:

  • 创建系统用户 postgres
  • 初始化数据库集群
  • 启动服务

二、检查服务状态

sudo systemctl status postgresql

启动 / 重启 / 停止:

sudo systemctl start postgresql
sudo systemctl restart postgresql
sudo systemctl enable postgresql

三、切换到 postgres 用户

PostgreSQL 默认使用 peer 认证,需要切换到 postgres 用户操作:

sudo -i -u postgres

进入后使用:

psql

退出:

\q
exit

四、创建用户和数据库(推荐方式)

1️⃣ 创建新用户

createuser --interactive

示例:

Enter name of role to add: myuser
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) n

或直接用 SQL:

CREATE USER myuser WITH PASSWORD 'mypassword';

2️⃣ 创建数据库

createdb mydb

或:

CREATE DATABASE mydb OWNER myuser;

五、配置远程访问(⚠️ 常见配置点)

1️⃣ 修改监听地址

编辑配置文件:

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

(版本号可能是 13 / 14 / 15)

找到:

#listen_addresses = 'localhost'

改为:

listen_addresses = '*'

2️⃣ 配置客户端认证

编辑:

sudo nano /etc/postgresql/15/main/pg_hba.conf

在末尾添加(示例):

✅ 允许指定 IP 使用密码登录

host    all    all    192.168.1.0/24    md5

✅ 允许所有 IP(不推荐生产)

host    all    all    0.0.0.0/0    md5

✅ 本地用户使用密码

host    all    all    localhost    md5

3️⃣ 重启 PostgreSQL

sudo systemctl restart postgresql

六、设置用户密码(非常重要)

sudo -u postgres psql
ALTER USER myuser WITH PASSWORD 'mypassword';

七、防火墙配置(如有)

UFW 示例

sudo ufw allow 5432/tcp

⚠️ 云服务器记得 安全组放行 5432


八、常用 psql 命令

\l        -- 查看数据库
\du       -- 查看用户
\dt       -- 查看表
\c dbname -- 切换数据库
\q        -- 退出

九、开机自启(默认已开启)

确认:

sudo systemctl is-enabled postgresql

十、生产环境建议 ✅

  • ✅ 不使用默认 postgres 用户远程登录
  • ✅ 使用 md5scram-sha-256
  • ✅ 限制监听 IP
  • ✅ 定期备份
  • ✅ 修改默认端口(可选)

示例:最小可用配置总结

安装 → 创建用户 → 创建数据库 → 设置密码 → 修改 pg_hba.conf → 重启

如果你需要:

  • Docker 部署 PostgreSQL
  • 主从复制 / 高可用
  • 性能调优(shared_buffers、work_mem)
  • 备份与恢复(pg_dump / pg_basebackup)

可以直接告诉我你的使用场景(开发 / 生产 / 云服务器)。

0