【问题标题】:postgresql/postgis backup strategy to restore after geos/postgis recompile?在 geos/postgis 重新编译后恢复 postgresql/postgis 备份策略?
【发布时间】:2009-04-23 20:28:49
【问题描述】:

现状:

  • Ubuntu 8.04服务器版(直播服务器)
  • Postgresql 8.3.7(来自标准存储库)
  • Postgis 1.3.3(来自标准存储库)
  • GEOS 2.3.4(来自标准存储库)

问题:

GEOS 包含在 3.0 版本中修复的错误。 我遇到了这些问题,需要升级 GEOS/Postgis 以包含 GEOS 修复。

我现在的位置:

在具有几乎相同设置的测试机器上,我删除了 postgis 包并尝试针对 Postgis 1.3.5 和 Postgresql 8.3.7 重新编译 Geos 3.1.0。

在修复了一些链接和路径问题后,这行得通。

我的具体问题:

将我的数据库(表、函数、触发器、gist 索引、数据...)从“基于较旧的 geos/postgis”版本迁移到“较新”版本的最佳方法是什么?

我会尝试“软升级”方式described in the documentation,但你认为这会奏效吗?

对这个启用了 postgis 的数据库进行完整备份以便我可以在我正在编译的“较新的 postgis 版本”上完全恢复它的最佳方法是什么?

【问题讨论】:

    标签: postgresql backup compilation postgis geos


    【解决方案1】:

    我会尝试文档中描述的“软升级”方式,但您认为这可行吗?

    我对 GEOS 了解得不够多,无法肯定地说,但这听起来是个不错的尝试。从您链接到的文档中:

    如果无法进行软升级,脚本将中止,并且您会收到有关需要进行硬升级的警告,因此请不要犹豫,先尝试软升级。

    否则,我只会按照他们的“硬升级”指示,这似乎在功能上等同于用于升级到新的 PostgreSQL 主要版本的常用pg_dump/pg_restore 方法。 Postgres 文档中有更多关于如何做到这一点的信息;这是一个非常安全的过程,并且作为官方迁移方法,得到了极好的支持。

    您可能希望考虑的一件事是在完成所有这些工作时升级到 PostgreSQL 8.4 测试版。它是测试版软件,没错,但这可能对您的环境来说是可以接受的,如果它适合,那么您将获得 8.4 的新功能以及软升级到 8.4 最终版的能力(因为预计不会使用磁盘格式测试开始后更改)。

    【讨论】:

    • 感谢您抽出宝贵时间撰写此内容丰富的答案。我会在一分钟内将其标记为答案。我想这一切都在文档中,但我有点不确定,因为 postgis 文档在这个主题上有点稀疏,而且可能有一些我不知道的问题 ;-) 好吧,我想我总是可以回滚到以前的版本当我有良好的转储和备份并且出现严重错误时。我将阅读 8.4 中的“新”功能,看看我是否也应该升级 postgres。
    • @ChristopheD 查看当前 PostGIS SVN 的文档,它们已被显着更新和重构 - postgis.org/documentation/manual-svn
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    相关资源
    最近更新 更多