postgresql怎么还原数据库

根据备份文件类型选择还原方式:若为custom、tar或目录格式,使用pg_restore命令恢复;若为plain文本格式,则用psql导入SQL脚本,需提前创建目标数据库并确保用户权限充足。

postgresql怎么还原数据库

使用postgresql还原数据库通常通过命令行工具 pg_restorepsql 来完成,具体方式取决于你当初备份时使用的格式。

1. 确认备份文件类型

PostgreSQL 常见的备份方式有:

  • plain 文本格式:由 pg_dump -F p 生成,本质是 SQL 脚本
  • custom 格式:由 pg_dump -F c 生成,默认格式,二进制压缩,支持并行恢复
  • tar 格式:由 pg_dump -F t 生成,适合归档
  • 目录格式:由 pg_dump -F d 生成,用于并行备份和恢复

2. 使用 pg_restore 还原 custom、tar 或目录格式

如果你的备份是 .backup.dump 或目录形式,使用 pg_restore

 pg_restore -h localhost -p 5432 -U username -d dbname -v your_backup_file.dump 

常用参数说明:

postgresql怎么还原数据库

阿里云-虚拟数字人

阿里云-虚拟数字人是什么? …

postgresql怎么还原数据库 2

查看详情 postgresql怎么还原数据库

  • -h:数据库主机
  • -p端口
  • -U:用户名
  • -d:目标数据库名(需提前创建)
  • -v:显示详细过程
  • –clean:还原前删除对象(小心使用)
  • if-exists:配合 –clean,避免因对象不存在报错
  • -j 4:启用4个进程并行恢复(仅适用于目录格式或某些 custom 备份)

3. 使用 psql 还原文本格式(SQL 脚本)

如果备份是纯 SQL 文件(如 backup.sql),用 psql 恢复:

 psql -h localhost -p 5432 -U username -d dbname -f backup.sql 

确保目标数据库已存在。若没有,先创建:

 createdb -U username dbname 

4. 注意事项

  • 还原前确认用户有足够权限操作目标数据库
  • 如果还原到一个已有数据的库,建议先清空或使用 --clean 参数
  • 遇到权限错误时,检查 pg_hba.conf 配置和用户角色
  • 远程还原时确保网络可通,防火墙开放 5432 端口

基本上就这些,根据你的备份方式选择对应命令即可。

上一篇
下一篇
text=ZqhQzanResources