pg_dump/pg_restore 迁移 postgresql 数据库
文章目录
pg_dump/pg_restore 大表备份+三段式恢复
生成备份
- 参数说明
- -Fd:多线程备份,备份到目录下,每个表一个文件
- 仅 -Fd 的情况下支持多线程备份
- -d:要备份的数据库
- -j:并发备份线程数
- –verbose:日志记录详细信息
- –compress:压缩级别,默认为0,不压缩,测试3压缩基别已经符合预期
- -Fd:多线程备份,备份到目录下,每个表一个文件
|
|
- 打包
|
|
- 传输至目标数据库
|
|
导入数据
- 三段式恢复
- 解压
|
|
阶段1:恢复结构(pre-data)
- 创建表、视图、序列、函数等,不包含数据。
- 如果表内有其他脏数据需要清理的话可增加 –clean 参数,会在创建对象前调用 drop 清理对象
- 需要清理原有数据的话,仅在 pre-data 阶段调用 –clean 即可
|
|
阶段2:恢复核心数据(data)
- 可增加参数 –disable-triggers 暂时禁用触发器和外键检查,提升速度,但恢复完成后必须手动验证数据完整性
|
|
阶段3:恢复约束与索引(post-data)
- 序列的
setval自动在此阶段执行,无需手动处理序列问题
|
|
更新表统计信息
|
|
数据检查
自增序列
- 查询自增序列
|
|
文章作者 Xiang
上次更新 2026-05-12