PostgreSQL 的恢复模型

要从使用 pg_dump 命令创建的存档文件恢复数据库,可使用 pg_restore 命令。请确保使用测试数据库对备份和恢复模型进行测试。

此处简要概述了恢复数据库要执行的步骤。有关更完整的说明,请参阅位于 http://www.postgresql.org/docs/8.3/static/backup.htmlhttp://www.postgresql.org/docs/8.3/static/app-pgrestore.html 的 PostgreSQL 文档。

  1. 在 PostgreSQL 实例中,数据库名称必须唯一,因此应该删除旧的数据库。
    dropdb –U sde mypgdb
    
  2. 重新创建数据库。
    注注:

    确保新数据库与将恢复的数据库具有相同的名称、编码和所有者属性。

    createdb –U sde –E UTF8 –D gdbtablespace -O sde mypgdb
    
  3. 在重新创建的数据库中设置 search_path 变量以搜索用户方案、公共方案和 sde 方案。

    更改数据库以在命令行中设置此变量。

    psql -U postgres mypgdb -c "alter database mypgdb set search_path = E'"$user"',public,sde;
    
  4. 使用 pg_restore 命令恢复数据库。

    必须运行两次恢复命令;第一次用于恢复公共方案的内容,第二次用于恢复数据库中所有其他方案的内容。

    pg_restore -U sde -n public -d mygdb mypgdb1031.dump  pg_restore –U sde –d mypgdb mypgdb1031.dump
    
提示提示:

如果安装了 PostGIS 并正使用“几何”存储,请务必阅读有关创建备份和恢复数据库的 PostGIS 文档。此过程会因使用的 PostGIS 版本的不同而有所不同。

相关主题

9/15/2013