在 Linux 上通过 pgAdmin 恢复(还原)PostgreSQL 数据,通常有几种常见场景。下面按最常用方式一步步说明。
常见备份格式:
.sql(文本格式,用 psql 或 pgAdmin 恢复).backup / .dump(自定义格式,用 pgAdmin 或 pg_restore)✅ 适合:表结构已存在,或完整恢复
如果是 .sql 文件:
.sql 文件⚠ 注意:
psql -U username -d dbname -f backup.sql
pg_restore -U username -d dbname /path/to/backup.dump
常用参数:
pg_restore -U postgres -d mydb --clean --if-exists backup.dump
--clean:先删除已存在的对象--if-exists:避免报错❌ 权限不足
✅ 使用超级用户(如 postgres)
❌ 数据库不存在
✅ 先建库再恢复
❌ 编码不一致
✅ 创建数据库时指定编码
CREATE DATABASE mydb
WITH ENCODING='UTF8'
LC_COLLATE='en_US.UTF-8'
LC_CTYPE='en_US.UTF-8';
你可以补充:
.sql / .dump)我可以直接给你精确命令或操作步骤。