如何使用PostGIS升级PostgreSQL?

6

我曾经使用PostgreSQL 9.1,现在想升级到PostgreSQL 9.3:

$ /usr/lib/postgresql/9.3/bin/pg_upgrade -b /usr/lib/postgresql/9.1/bin -B /usr/lib/postgresql/9.3/bin -d /var/lib/postgresql/9.1/main/ -D /var/lib/postgresql/9.3/main/ -O "-c config_file=/etc/postgresql/9.3/main/postgresql.conf" -o "-c config_file=/etc/postgresql/9.1/main/postgresql.conf"

但是它失败了:

检查所需库是否存在 致命错误

您的安装引用了新安装中缺失的可加载库。您可以将这些库添加到新的安装中,或从旧的安装中删除使用它们的函数。问题库的列表在以下文件中: loadable_libraries.txt

loadable_libraries.txt 包含以下内容:

无法加载库"$libdir/postgis-1.5" 错误:无法访问文件"$libdir/postgis-1.5":没有那个文件或目录

这类似于使用homebrew升级到PostGIS 2.1和PostgreSQL 9.3.1时缺少库文件的情况。

我正在运行Ubuntu,并使用apt-get安装了PostgreSQL和PostGIS。

有人成功地做到了吗?


我会尝试查找名为postgis-1.5的任何目录,并根据其位置推断应将其复制到新版本的何处。如果这样不起作用,也许您应该卸载postgis1.5,然后升级并使用CREATE EXTENSION添加postgis 2.1。 - ffflabs
我可以在拥有几何数据的数据库的情况下卸载PostGIS吗? - TN.
1个回答

5

由于PostGIS 1.5不支持PostgreSQL 9.3,您需要升级PostGIS版本。由于pg_upgrade无法用于此操作,因此您需要遵循硬升级过程,该过程利用了随PostGIS一起提供的postgis_restore.pl脚本中的逻辑。如果您对该过程有任何进一步的问题,请将其添加到此问题中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接