postgresql - 不再识别 PostGIS 几何数据类型

标签 postgresql postgis

几周前从 9.4 升级后,我目前在 Windows 7 上运行 postgresql 9.6.1 和 postGIS 2.3。升级后,我的数据库可以正常工作超过两周,但是今天早上我试图将一个包含几何数据的表移动到另一个表空间,但返回了错误:找不到类型“public.geometry”。

经过调查,我数据库中的所有几何列现在都缺少几何数据类型,并且无法在 QGIS 中加载。我没有对我的数据库进行任何结构更改来触发它,我只是停止了对单个表运行缓慢的查询。

我尝试重新启动服务和我的 PC,检查扩展是否仍然存在,重新安装 PostGIS 2.3 并尝试通过 pgadmin 4 重新定义具有几何类型的表。

除了卸载并重新安装所有 postgresql 之外,还有其他建议吗?

最佳答案

当您升级 PostgreSQL 时,您删除了 PostGIS 扩展,您的空间数据类型连同相应的列一起被删除。因此,现在您可以通过多种方式取回数据,除非您从备份中恢复数据。

关于postgresql - 不再识别 PostGIS 几何数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40656072/

相关文章:

postgresql - 执行动态交叉表查询

sql - 创建索引以加速加入 (1) ids 匹配和 (2) 范围内的日期

sql - Postgres 更喜欢 coSTLy ST_Intersects() 而不是廉价索引

PostgreSQL - 优化连接比较距离的纬度和经度

postgresql - PostgreSQL 数据库中的 ST_Distance 函数计算错误的距离?

postgresql - 如何在 Phoenix 的 Ecto 查询中按类别选择具有最大日期组的 ID?

java - 将 PostgreSQL bytea-stored serialized-java-UUID 转换为 postgresql-UUID

json - 我应该如何从 bradjasper 的 django-jsonfield 升级到 Django 的内置 jsonfield?

postgresql - 使用 postgis 在 postgreSQL 上请求错误(返回多行)

postgresql - pg_dump 不在 Linux 上为 postgis 使用 $libdir