PostgreSQL与PostGIS安装使用时需要注意的坑
最近些许繁忙,没有时间系统整理PostgreSQL和PostGIS的安装和使用方法。所以就简单记录一下遇到的坑。
1、找不到 libintl-9.dll
我安装的PostgreSQL版本是11.7,PostGIS是3.0.1 (利用Stack Builder安装的PostGIS 3.0 bundle)。

安装完成,打算导入shp数据的时候发现PostGIS Shapefile Import/Export Manager无法打开,并提示“找不到libintl-9.dll”,如下:

这可咋办呢?只需要找到PostgreSQL安装目录的bin目录下的libintl-9.dll,将它复制到postgisgui目录下即可。

2、导入shp数据时提示“无法打开shp/dbf(shp/dbf file can not be opened)”
通过PostGIS Shapefile Import/Export Manager导入数据时惨遭拒绝,提示“shp/dbf file can not be opened”,如图。那可咋办呢?首先检查你的数据的路径中是否带有中文,postgis导入shp数据不支持中文路径。

3、导入shp数据时提示“Unable to convert data value to UTF-8”
通过PostGIS Shapefile Import/Export Manager导入数据时,提示“Unable to convert data value to UTF-8”。说明你数据中的编码格式与shp导入工具的设置的编码不一致。这个错误,一般主要是在shp数据有中文属性时出现(dbf中含有中文)

如果确实是由于你的数据中存在中文编码(有中文属性)导致的问题,那咋办呢?只需要在这里的Options中将编码改成GBK即可。

4、导入shp数据时二话不说,直接失败
通过PostGIS Shapefile Import/Export Manager导入数据时,没有任何其他提示,只显示”Shapefile import failed“,如图。

如果你连接的这个数据库是你自己创建的(不是名叫"postgis_30_sample"那个官方的空间数据库的例子),那么就有可能是空间数据库没有成功创建,什么意思呢?就是说你只创建了一个普通数据库(没有空间字段,自然就不支持shp数据导入)。
如何判断自己是否成功创建了空间数据库呢?检查,数据库(Databases)——你的数据库名称——架构(Schemas)——public——表(Tables),这个目录下是否存在一个名叫spatial_ref_sys的表,如果不存在,就说明你的数据库不具备存储空间数据的能力。

那咋办呢?首先让我们打开postgreSQL的查询工具,在菜单栏的工具选项里

在查询工具中输入如下SQL语句,添加空间数据库管理插件Postgis,运行。然后,刷新页面
CREATE EXTENSION PostGIS

现在数据表中就会出现名为spatial_ref_sys的表了,说明可以导入空间数据了。
关于postgis的具体使用可以参考下面这篇博客,虽然postgis版本不同但操作都是类似的。
搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3
PostgreSQL与PostGIS安装使用时需要注意的坑的更多相关文章
- 与你相遇好幸运,Postgresql和postgis安装
笔者开发环境: windows 7 x86_64 一开始安装的是官网最新版 PostgreSQL 9.6 ,安装成功 之后安装PostGIS Bundle 2.2 for PostgreSQL x64 ...
- 当我们安装使用时,会出现eclipse启动不了,出现“Java was started but returned exit code=13......”的问题
安装win8.1后,启动eclipse,也会提示 "java was started but returned exit code=13" 可能是eclipse.ini配置文件错误 ...
- CentOS7使用yum安装PostgreSQL和PostGIS
更新yum源 CentOS7默认yum源的PostgreSQL版本过低,不适合在本版本上使用.在https://yum.postgresql.org/repopackages.php上找到适合Cent ...
- PostgreSQL及PostGIS使用
基础知识 参考文档:http://www.postgis.net/docs/ PostGIS支持的GIS对象是OpenGIS Consortium(OGC)定义的“简单特征”的超集.OpenGIS规范 ...
- MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”
MySQL 安装和启动服务,以及遇到的问题 MySQL版本: mysql-5.7.13-winx64.zip (免安装,解压放到程序文件夹即可,比如 C:\Program Files\mysql-5. ...
- ubuntu安装postgresql与postgis
版本信息 ubuntu 14.04.1LTS postgresql 9.3.5 postgis 2.1.2 今天尝试着安装了postgis 2.1.2,(较简便的包安装,不是源码 ...
- PostgreSQL 之 yum安装 postgis 插件
版本说明: CentOS7.5 + PostgreSQL 10.5 参考资源: https://www.postgresql.org/download/linux/redhat/ http://dow ...
- CentOS 6.9/7通过yum安装指定版本的PostgreSQL扩展PostGIS
一.安装PostGIS扩展插件(24_10) // 安装EPEL源 # rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-rele ...
- Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip
Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip 今天的任务就是找到解决办法 另外就是用布置好python3的路径
随机推荐
- 容器化 | 在 K8s 上部署 RadonDB MySQL Operator 和集群
作者:程润科 数据库研发工程师 编辑:张莉梅 高级文档工程师 视频:钱芬 高级测试工程师 本文将演示在 Kubernetes 上部署 RadonDB MySQL Kubernetes 2.X(Oper ...
- MySQL JDBC常用知识,封装工具类,时区问题配置,SQL注入问题
JDBC JDBC介绍 Sun公司为了简化开发人员的(对数据库的统一)操作,提供了(Java操作数据库的)规范,俗称JDBC,这些规范的由具体由具体的厂商去做 对于开发人员来说,我们只需要掌握JDBC ...
- z-index原理及适用范围
z-index原理及适用范围 原理 z-index这个属性控制着元素在z轴上的表现形式,堆叠顺序是当前元素位于z轴上的值,数值越大说明元素的堆叠1顺序越高,越靠近屏幕. 适用范围 <div cl ...
- zookeeper 负载均衡和 nginx 负载均衡区别 ?
zk 的负载均衡是可以调控,nginx 只是能调权重,其他需要可控的都需要自己写插件:但是 nginx 的吞吐量比 zk 大很多,应该说按业务选择用哪种方式.
- switch 是否能作用在 byte 上,是否能作用在 long 上, 是否能作用在 String 上?
在 Java 5 以前,switch(expr)中,expr 只能是 byte.short.char.int.从 Java 5 开始,Java 中引入了枚举类型,expr 也可以是 enum 类型,从 ...
- JVM调优常用参数配置
堆配置 -Xms:初始堆大小 -Xms:最大堆大小 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值.如:为3表示年轻代和年老代比值为1:3,年轻代占 ...
- Elasticsearch 对于大数据量(上亿量级)的聚合如何实现?
Elasticsearch 提供的首个近似聚合是 cardinality 度量.它提供一个字段的基数, 即该字段的 distinct 或者 unique 值的数目.它是基于 HLL 算法的.HLL 会 ...
- Spring源码分析笔记--AOP
核心类&方法 BeanDefinition Bean的定义信息,封装bean的基本信息,从中可以获取类名.是否是单例.是否被注入到其他bean中.是否懒加载.bean依赖的bean的名称等. ...
- 学习Squid(一)
第1章 Squid介绍 1.1 缓存服务器介绍 缓存服务器(英文意思cache server),即用来存储(介质为内存及硬盘)用户访问的网页,图片,文件等等信息的专用服务器.这种服务器不仅可以使用户可 ...
- C++重载输入流、输出流运算符
在c++中类的私有成员是不能被直接访问的,需要通过类中提供的成员函数简介的操作这些数据.同时C++ 能够使用流提取运算符 >> 和流插入运算符 << 来输入和输出内置的数据类型 ...