一、PG 基础登录与常用命令
PG 默认使用postgres系统用户登录,进入 psql 交互终端后,可通过反斜杠快捷命令高效管理数据库。
已生成代码
核心快捷命令
\l:列出所有数据库\c 库名:切换数据库\dt:查看当前库的表\dn:查看所有模式(Schema)\du:查看所有用户\d 表名:查看表结构\q:退出 psql
二、数据库与表基础操作
1. 数据库操作
已生成代码
2. 数据表操作
已生成代码
3. 数据增删改查
已生成代码
三、模式(Schema)管理
Schema 是 PG 的逻辑分组,类似文件夹,用于隔离对象、避免命名冲突。
已生成代码
四、备份与恢复(生产常用)
PG 提供三种备份方式,SQL 转储最通用、跨版本兼容。
1. 单库备份(pg_dump)
已生成代码
2. 单库恢复
已生成代码
3. 全实例备份(pg_dumpall)
已生成代码
五、远程连接配置
默认 PG 只允许本地访问,需修改两处配置开放远程。
1. 修改监听地址
编辑postgresql.conf:
已生成代码
2. 配置访问权限
编辑pg_hba.conf,允许任意 IP 访问:
已生成代码
3. 重启生效
已生成代码
六、密码重置(忘记密码)
- 备份
pg_hba.conf - 临时将本地认证改为
trust - 重启服务,无密码登录
- 修改密码:
已生成代码
- 恢复配置并重启
总结
本文覆盖 PG 日常运维高频操作:基础命令、库表管理、Schema 隔离、备份恢复、远程配置、密码重置。内容简洁实用,适合 DBA 与开发快速查阅。
提示:生产环境建议使用
scram-sha-256认证,避免trust带来安全风险。
❤️ 原创不易,觉得有用欢迎点赞 + 收藏 + 关注,后续持续更新 PG 进阶运维内容。"""
输出最终博文
print(blog)
PostgreSQL 日常维护速查手册|基础操作 + 备份恢复 + 远程连接
发布时间: 2026-04-09 15:30:00标签: PostgreSQL、PG 数据库、数据库运维、备份恢复、远程连接
一、PG 基础登录与常用命令
PostgreSQL 默认使用postgres系统用户登录,进入 psql 交互终端后,可通过反斜杠快捷命令高效完成数据库管理操作。
bash
运行
# 切换postgres用户并登录数据库
su - postgres
psql
核心快捷命令
\l:列出所有数据库\c 库名:切换目标数据库\dt:查看当前库下所有表\dn:查看所有模式(Schema)\du:查看所有数据库用户\d 表名:查看表结构详情\q:退出 psql 终端
二、数据库与表基础操作
1. 数据库操作
sql
-- 创建数据库
CREATE DATABASE mydb;
-- 删除数据库
DROP DATABASE mydb;
-- 查看数据库大小(友好格式)
SELECT pg_size_pretty(pg_database_size('mydb'));
2. 数据表操作
sql
-- 创建普通表
CREATE TABLE test(id INT, name VARCHAR(10), age INT);
-- 复制表(包含结构与数据)
CREATE TABLE test2 AS TABLE test;
-- 删除表
DROP TABLE test2;
3. 数据增删改查
sql
-- 插入数据
INSERT INTO test VALUES(1,'zhangsan',18);
-- 查询数据
SELECT * FROM test;
-- 更新数据
UPDATE test SET age=20 WHERE id=1;
-- 删除数据
DELETE FROM test WHERE id=1;
三、模式(Schema)管理
Schema 是 PostgreSQL 特有的逻辑分组容器,作用类似系统文件夹,可实现对象隔离、避免命名冲突,是多业务场景必备能力。
sql
-- 创建模式
CREATE SCHEMA hr;
-- 在指定模式下创建表
CREATE TABLE hr.employees(id SERIAL PRIMARY KEY, name TEXT);
-- 设置模式搜索优先级
SET search_path TO hr, public;
-- 查看当前默认模式
SELECT current_schema();
四、备份与恢复(生产环境推荐)
PostgreSQL 提供三种备份方案,SQL 转储具备跨版本、跨架构兼容优势,是日常备份首选。
1. 单库备份(pg_dump)
bash
运行
pg_dump mydb > mydb_backup.sql
2. 单库恢复
bash
运行
# 提前创建空库
createdb -T template0 mydb
# 执行恢复
psql mydb < mydb_backup.sql
3. 全实例备份(pg_dumpall)
bash
运行
# 备份所有库、角色、表空间
pg_dumpall > all_backup.sql
# 全实例恢复
psql -f all_backup.sql postgres
五、远程连接配置
PostgreSQL 默认仅允许本地连接,需修改两项核心配置实现远程访问。
1. 修改监听地址
编辑postgresql.conf,开启全网段监听:
ini
listen_addresses = '*'
2. 配置 IP 访问权限
编辑pg_hba.conf,添加远程访问规则:
ini
host all all 0.0.0.0/0 scram-sha-256
3. 重启服务生效
bash
运行
systemctl restart postgresql
六、密码重置(忘记密码处理)
- 备份
pg_hba.conf配置文件 - 临时将本地认证方式改为
trust - 重启数据库,无密码登录
- 执行密码修改语句:
sql
ALTER USER postgres WITH PASSWORD '新密码';
- 恢复原配置文件,重启服务