PostgreSQL 的恢复模型
要从使用 pg_dump 命令创建的存档文件恢复数据库,可使用 pg_restore 命令。请确保使用测试数据库对备份和恢复模型进行测试。
此处简要概述了恢复数据库要执行的步骤。有关更完整的说明,请参阅位于 http://www.postgresql.org/docs/8.3/static/backup.html 和 http://www.postgresql.org/docs/8.3/static/app-pgrestore.html 的 PostgreSQL 文档。
- 在 PostgreSQL 实例中,数据库名称必须唯一,因此应该删除旧的数据库。
dropdb –U sde mypgdb
- 重新创建数据库。注:
确保新数据库与将恢复的数据库具有相同的名称、编码和所有者属性。
createdb –U sde –E UTF8 –D gdbtablespace -O sde mypgdb
- 在重新创建的数据库中设置 search_path 变量以搜索用户方案、公共方案和 sde 方案。
更改数据库以在命令行中设置此变量。
psql -U postgres mypgdb -c "alter database mypgdb set search_path = E'"$user"',public,sde;
- 使用 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