代码之家  ›  专栏  ›  技术社区  ›  ChristopheD

postgresql/postgis备份策略在geos/postgis重新编译后恢复?

  •  0
  • ChristopheD  · 技术社区  · 16 年前

    现状:

    • Ubuntu 8.04服务器版(Live Server)
    • PostgreSQL 8.3.7(来自标准存储库)
    • PostGIS 1.3.3(来自标准存储库)
    • GEOS 2.3.4(来自标准存储库)

    问题:

    geos包含在3.0版本中修复的bug。 我遇到过这些问题,需要升级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版本”上完全恢复它?

    1 回复  |  直到 16 年前
        1
  •  2
  •   kquinn    16 年前

    我将尝试文档中描述的“软升级”方法,但您认为这会有效吗?

    我对地球观测系统的了解还不足以肯定,但这听起来是个不错的尝试。从链接到的文档中:

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

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

    您可能希望考虑的一件事是在您完成所有这些工作的同时升级到PostgreSQL 8.4测试版。它是测试版软件,是真的,但这可能对您的环境是可接受的,如果它是合适的,那么您将获得8.4的新功能,并能够进行软升级到8.4最终版本(因为在测试版开始后,预计磁盘格式不会改变)。