centos pgadmin恢复步骤有哪些
导读:CentOS系统下pgAdmin恢复PostgreSQL数据库的常见步骤 一、准备工作 确认备份文件:确保已获取有效的备份文件(逻辑备份如.sql、.backup,或物理备份目录)。 停止目标数据库(可选):若恢复整个数据库,建议先停止目...
CentOS系统下pgAdmin恢复PostgreSQL数据库的常见步骤
一、准备工作
- 确认备份文件:确保已获取有效的备份文件(逻辑备份如
.sql、.backup,或物理备份目录)。 - 停止目标数据库(可选):若恢复整个数据库,建议先停止目标数据库以避免冲突(
systemctl stop postgresql)。 - 检查PostgreSQL服务状态:确保PostgreSQL服务运行正常(
systemctl status postgresql)。
二、使用pgAdmin图形界面恢复(逻辑备份)
- 连接服务器:启动pgAdmin,输入PostgreSQL服务器的IP、端口(默认5432)、用户名(如
postgres)及密码,点击“保存”连接。 - 选择目标数据库:在左侧导航栏展开“Servers”→选中目标服务器→展开“Databases”→右键点击需要恢复的数据库(或新建一个空数据库作为恢复目标)。
- 启动恢复流程:选择“Restore”(恢复)选项,弹出恢复对话框。
- 配置恢复参数:
- 备份文件:点击“Choose File”选择本地或远程的备份文件(如
.sql或.backup格式); - 恢复选项:根据需求调整(如“Owner”选择数据库所有者、“Database”确认目标数据库名称);
- 高级设置(可选):如需覆盖现有数据,可勾选“Clean”(清空目标数据库)。
- 备份文件:点击“Choose File”选择本地或远程的备份文件(如
- 执行恢复:点击“Restore”按钮,pgAdmin会在后台调用
pg_restore或psql工具执行恢复,等待进度条完成。
三、使用命令行工具恢复(逻辑/物理备份)
1. 逻辑备份恢复(适用于.sql或自定义格式备份)
- 语法:
psql -h < 主机名> -U < 用户名> -d < 目标数据库名> -f < 备份文件路径> - 示例(恢复
mydb_backup.sql到mydatabase数据库):psql -h localhost -U postgres -d mydatabase -f /path/to/mydb_backup.sql - 说明:执行后会提示输入PostgreSQL用户密码,恢复完成后会显示执行的SQL语句数量。
2. 物理备份恢复(适用于pg_basebackup生成的目录备份)
- 语法:
pg_basebackup -h < 主机名> -U < 用户名> -D < 恢复目录路径> -P -X stream -R - 示例(将备份恢复到
/var/lib/pgsql/15/data目录):pg_basebackup -h localhost -U postgres -D /var/lib/pgsql/15/data -P -X stream -R - 说明:
-R参数会自动配置postgresql.conf中的restore_command,适用于基于时间点恢复(PITR)的场景。
四、使用pg_rman工具恢复(支持PITR)
若需要基于时间点的恢复(如恢复到某一具体时间),可使用pg_rman工具(适用于PostgreSQL 12及以上版本)。
- 安装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 - 配置PostgreSQL:
编辑postgresql.conf(通常位于/var/lib/pgsql/15/data/),添加以下参数:重启PostgreSQL使配置生效:wal_level = replica archive_mode = on archive_command = 'test ! -f /path/to/archive/%f & & cp %p /path/to/archive/%f' max_wal_senders = 10systemctl restart postgresql。 - 初始化pg_rman备份目录:
pg_rman init -B /path/to/backup_dir - 执行恢复:
pg_rman recover -B /path/to/backup_dir --target-time="2025-11-01 12:00:00"--target-time:指定恢复到的时间点(如2025-11-01 12:00:00),若省略则恢复到最新备份。
五、恢复后验证
- 检查数据库状态:登录pgAdmin或使用
psql查看目标数据库是否存在。 - 验证数据完整性:查询关键表的数据,确认恢复结果符合预期。
- 清理临时文件:若恢复成功,可删除备份文件或归档目录中的旧文件以释放空间。
注意事项:
- 恢复操作前务必备份当前数据库,防止误操作导致数据丢失;
- 测试环境优先验证恢复流程,确保备份文件可用;
- 物理备份恢复需确保PostgreSQL版本与备份时的版本一致,避免兼容性问题。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos pgadmin恢复步骤有哪些
本文地址: https://pptw.com/jishu/746091.html
