centos

centos pgadmin恢复步骤有哪些

小樊
44
2025-11-10 02:13:16
栏目: 智能运维

CentOS系统下pgAdmin恢复PostgreSQL数据库的常见步骤

一、准备工作

  1. 确认备份文件:确保已获取有效的备份文件(逻辑备份如.sql.backup,或物理备份目录)。
  2. 停止目标数据库(可选):若恢复整个数据库,建议先停止目标数据库以避免冲突(systemctl stop postgresql)。
  3. 检查PostgreSQL服务状态:确保PostgreSQL服务运行正常(systemctl status postgresql)。

二、使用pgAdmin图形界面恢复(逻辑备份)

  1. 连接服务器:启动pgAdmin,输入PostgreSQL服务器的IP、端口(默认5432)、用户名(如postgres)及密码,点击“保存”连接。
  2. 选择目标数据库:在左侧导航栏展开“Servers”→选中目标服务器→展开“Databases”→右键点击需要恢复的数据库(或新建一个空数据库作为恢复目标)。
  3. 启动恢复流程:选择“Restore”(恢复)选项,弹出恢复对话框。
  4. 配置恢复参数
    • 备份文件:点击“Choose File”选择本地或远程的备份文件(如.sql.backup格式);
    • 恢复选项:根据需求调整(如“Owner”选择数据库所有者、“Database”确认目标数据库名称);
    • 高级设置(可选):如需覆盖现有数据,可勾选“Clean”(清空目标数据库)。
  5. 执行恢复:点击“Restore”按钮,pgAdmin会在后台调用pg_restorepsql工具执行恢复,等待进度条完成。

三、使用命令行工具恢复(逻辑/物理备份)

1. 逻辑备份恢复(适用于.sql或自定义格式备份)
2. 物理备份恢复(适用于pg_basebackup生成的目录备份)

四、使用pg_rman工具恢复(支持PITR)

若需要基于时间点的恢复(如恢复到某一具体时间),可使用pg_rman工具(适用于PostgreSQL 12及以上版本)。

  1. 安装pg_rman
    wget https://github.com/ossc-db/pg_rman/releases/download/v1.4.0/pg_rman-1.4.0-pg15-centos7.x86_64.rpm
    sudo yum install -y pg_rman-1.4.0-pg15-centos7.x86_64.rpm
    
  2. 配置PostgreSQL
    编辑postgresql.conf(通常位于/var/lib/pgsql/15/data/),添加以下参数:
    wal_level = replica
    archive_mode = on
    archive_command = 'test ! -f /path/to/archive/%f && cp %p /path/to/archive/%f'
    max_wal_senders = 10
    
    重启PostgreSQL使配置生效:systemctl restart postgresql
  3. 初始化pg_rman备份目录
    pg_rman init -B /path/to/backup_dir
    
  4. 执行恢复
    pg_rman recover -B /path/to/backup_dir --target-time="2025-11-01 12:00:00"
    
    • --target-time:指定恢复到的时间点(如2025-11-01 12:00:00),若省略则恢复到最新备份。

五、恢复后验证

  1. 检查数据库状态:登录pgAdmin或使用psql查看目标数据库是否存在。
  2. 验证数据完整性:查询关键表的数据,确认恢复结果符合预期。
  3. 清理临时文件:若恢复成功,可删除备份文件或归档目录中的旧文件以释放空间。

注意事项

0
看了该问题的人还看了