PGSQL安装PostGIS扩展模块

这篇具有很好参考价值的文章主要介绍了PGSQL安装PostGIS扩展模块。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、PostGIS简介

1、PostGIS介绍

PostGIS是一个空间数据库,空间数据库像存储和操作数据库中其他任何对象一样去存储和操作空间对象。

空间数据与数据库关联起来的三个要素:数据类型、索引和函数。

  • 空间数据类型:用于指定图形为点(point)、线(line)和面(polygon)
  • 多维度空间索引:被用于进行空间操作的高效处理(注意是多维度哦,而不是只有针对二维空间数据的索引)
  • 空间函数:构建于SQL语言中,用于进行空间属性和空间关系的查询

空间数据类型、空间索引和空间函数组合在一起,提供了灵活的结构用于空间数据库的性能优化和分析。

空间数据库将空间数据和对象关系数据库(Object Relational database)完全集成在一起。实现从以GIS为中心向以数据库为中心的转变。

PostGIS通过向PostgreSQL添加对空间数据类型、空间索引和空间函数的支持,将PostgreSQL数据库管理系统转换为空间数据库。因为PostGIS是建立在PostgreSQL之上的,所以PostGIS自动继承了重要的"企业级"特性以及开放源代码的标准。

参考文章:PostGIS教程一:PostGIS介绍:https://zhuanlan.zhihu.com/p/62034688

2、安装 PostGIS的目的

因为空间数据具有空间位置、空间关系、分类编码、海量数据等特征,所以一般的数据库管理系统无法储存空间数据,如PostgreSQL。

为了达到储存空间数据这个目的,就需要将普通数据库转变为空间数据库。那么具体如何解决这个问题呢?

“关系型数据库+空间数据引擎”通常是近年来由GIS厂商研发的一种中间件解决方案。用户将自己的空间数据交给独立于数据库之外的空间数据引擎,由空间数据引擎来组织空间数据在关系型数据库中的存储。当用户需要访问数据的时候,再通知空间数据引擎,由引擎从关系型数据库中取出数据,并转化为客户可以使用的方式。

而 PostGIS则在其中为空间数据引擎提供支持。它为PostgreSQL提供对空间数据类型、空间索引和空间函数等的空间信息服务,将PostgreSQL转变为可以储存空间数据的数据库。

简单来说,PostGIS仅仅只是PostgreSQL的一个插件,但是它将PostgreSQL变成了一个强大的空间数据库!PostGIS可以看作为空间数据进出该容器的转换通道,而关系型数据 PostgreSQL是存放空间数据的容器。

二、安装PostGIS

我们安装好 PostgreSQL数据库之后。下面为 PostgreSQL安装 PostGIS扩展模块。

1、PostGIS安装

PostGIS下载:http://download.osgeo.org/postgis/windows/

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

根据自己安装的 PostgreSQL版本来选择,因为本人安装的 PostgreSQL14,所以下面是对应 PostgreSQL14的window64位的安装包。

(1)双击安装包。

安装时我们勾选Create spatial database。表示创建一个空间数据库(postgis_34_sample),后面你不用时也可以删除它。

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

(2)选择安装路径时一定要保证与 PostgreSQL的安装路径保持一致

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

(3)需要验证 PostgreSQL的用户名和密码

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

(4)其他就一路next即可,安装成功之后打开pgAdmin查看数据库建立并连接成功。

这里我们就看到创建的 postgis_34_sample空间数据库。

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

2、数据库添加扩展

给指定的数据库添加扩展时执行下面语句。

CREATE EXTENSION postgis;

我们创建一个 test_gis数据库,并给它添加 PostGIS扩展,执行上面语句。执行成功之后,public中的表会多一个 spatial_ref_sys表(不要删除)。

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

3、验证

执行下面测试语句不报错即可。

SELECT st_asText(st_geomfromtext('POINT(114 50)', 4326));

SELECT ST_SetSRID(ST_Point(-87.71,43.741), 4326), ST_GeomFromText('POINT(-87.71 43.741)', 4326);

PGSQL安装PostGIS扩展模块,PGSQL安装PostGIS

三、常用的空间数据函数

PostGIS 提供了丰富的空间数据函数,用于存储、分析和处理空间数据。

以下是一些常用的空间数据函数以及它们的作用:

1、几何对象创建函数:

  • ST_GeomFromText(wkt, srid):从 Well-Known Text (WKT) 格式的文本创建几何对象。可以选择性地指定坐标系标识。
  • ST_GeomFromEWKT(ewkt):从扩展的 Well-Known Text (EWKT) 格式的文本创建几何对象,包括坐标系信息。
  • ST_Point(x, y):创建一个点几何对象。
  • ST_LineString(points):创建一个线几何对象。
  • ST_Polygon(rings):创建一个多边形几何对象。

2、几何对象检查函数:

  • ST_IsValid(geometry):检查几何对象是否有效。
  • ST_IsEmpty(geometry):检查几何对象是否为空。
  • ST_GeometryType(geometry):返回几何对象的类型。

3、几何对象转换函数:

  • ST_AsText(geometry):将几何对象转换为 Well-Known Text (WKT) 格式的文本。
  • ST_AsEWKT(geometry):将几何对象转换为扩展的 Well-Known Text (EWKT) 格式的文本。
  • ST_SetSRID(geometry, srid):设置几何对象的坐标系标识。

4、空间关系函数:

  • ST_Intersects(geom1, geom2):检查两个几何对象是否相交。
  • ST_Contains(geom1, geom2):检查一个几何对象是否包含另一个几何对象。
  • ST_Distance(geom1, geom2):计算两个几何对象之间的距离。

5、空间分析函数:

  • ST_Buffer(geometry, distance):对几何对象进行缓冲区分析。
  • ST_Intersection(geom1, geom2):计算两个几何对象的交集。
  • ST_Union(geom1, geom2):计算两个几何对象的并集。

6、几何对象编辑函数:

  • ST_Transform(geometry, srid):将几何对象转换到指定的坐标系。
  • ST_Simplify(geometry, tolerance):对几何对象进行简化处理。
  • ST_Centroid(geometry):计算几何对象的质心。

7、几何对象测量函数:

  • ST_Area(geometry):计算几何对象的面积。
  • ST_Length(geometry):计算几何对象的长度。
  • ST_Perimeter(geometry):计算几何对象的周长。

8、几何对象索引函数:

  • ST_GeoHash(geometry):计算几何对象的 GeoHash 值。
  • ST_MakeEnvelope(minx, miny, maxx, maxy, srid):创建一个表示矩形范围的几何对象。

9、几何对象集合函数:

  • ST_Collect(geometry1, geometry2):将多个几何对象合并为一个几何对象集合。
  • ST_Extent(geometry):计算几何对象的外接矩形范围。

10、几何对象输出函数:

  • ST_AsGeoJSON(geometry):将几何对象转换为 GeoJSON 格式的文本。
  • ST_AsKML(geometry):将几何对象转换为 KML 格式的文本。

参考文章:

  • Postgis 图文安装详细教程 (Windows):https://blog.csdn.net/LY1201A/article/details/107080664

– 求知若饥,虚心若愚。文章来源地址https://www.toymoban.com/news/detail-809866.html

到了这里,关于PGSQL安装PostGIS扩展模块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenCV4.6.0及其扩展模块OpenCV_contrib的Cmake编译安装指南

    下载地址 注意: 从github上下载时尽量避免使用zip下载方式,可能丢失文件。可使用git在网络状况良好(梯纸)时进行下载。 下载地址 选择zip压缩包下载并解压即可。 OpenCV源码版本 必须 与扩展模块版本一致!!! 打开 Cmake ,选择OpenCV源码路径 新建一个build文件夹,编译后

    2024年02月13日
    浏览(67)
  • docker安装postgis

    目录 一、去docker仓库查找你想要安装的镜像版本,并pull下来 二、运行容器 三、创建数据库,导入数据 四、修改数据库密码 docker仓库 :https://hub.docker.com/r/postgis/postgis/tags 下面是我下载的版本 docker pull postgis/postgis:12-3.2 参数说明: --name                                 

    2024年02月06日
    浏览(33)
  • 安装PostgreSQL和PostGIS

    安装环境 Windows 2019 Standard Server 安装PostgreSQL 安装PostgreSQL 16 安装PostGIS 用PostgreSQL 16对应的PostGIS https://download.osgeo.org/postgis/windows/pg16/ https://download.osgeo.org/postgis/windows/pg16/postgis-bundle-pg16x64-setup-3.4.1-1.exe 创建数据库,比如gisdb 关键的一步: 数据库右键单击 【查询工具】输入以

    2024年02月19日
    浏览(48)
  • opencv_contrib扩展模块的安装(CMake编译器)及解决文件下载失败的问题(超详细)

    上篇文章介绍了Windows 10 64位系统下 Visual Studio 2015+OpenCV4.1.0下载安装及环境配置, Visual Studio 2015+OpenCV4.1.0 下载安装及环境配置_专注专心的博客-CSDN博客 本篇文章继续介绍,opencv_contrib扩展模块的安装(CMake编译器),并详细说明了“ffmpeg”、 “ippicv”、“data”、“xfeatures2d”等

    2024年02月14日
    浏览(98)
  • centos7安装 postgresql postgis pgrouting

    centos7 源码编译太烦了。直接yum install ...... 一、版本信息: CentOS版本:CentOS Linux release 7.9.2009 (Core) PostgreSQL版本: PostgreSQL 12.0 PostGIS版本:postgis31 二、PostgresSQL + PostGIS 安装 1、官网安装链接: PostgreSQL: Linux downloads  2、升级所有包同时也升级软件和系统内核 yum -y update 3、安装

    2024年02月12日
    浏览(42)
  • Postgresql 12.2 + PostGIS 3.0.1 安装部署

    参考文档: 按照该文档安装即可,如果遇到报错,可以参考下文: https://blog.csdn.net/weixin_41166785/article/details/127674169 所需的安装包 在资源里面(我看下怎么可以不用积分下载) 1、no acceptable C compiler found in $PATH 参考:https://blog.csdn.net/IT_LPF/article/details/107360501 2、library ‘xml2’

    2024年01月17日
    浏览(35)
  • 【PostgreSQL】系列之 一 CentOS 7安装PGSQL15版本(一)

    目录 一、何为PostgreSQL? 二、PostgreSQL安装 2.1安装依赖 2.2 执行安装 2.3 数据库初始化 2.4 配置环境变量 2.5 创建数据库 2.6 配置远程 2.7 测试远程 三、常用命令 四、用户创建和数据库权限 PostgreSQL是以加州大学伯克利分校计算机系开发的POSTGRES, 版本 4.2为基础的对象关系型数据

    2024年02月14日
    浏览(58)
  • Linux yum安装pgsql出现Bad GPG signature错误

    官方文档:https://www.postgresql.org/download/linux/redhat/ 按照官方文档操作执行如下命令: 提示找不到,此时需要进行如下操作: 继续执行:sudo yum install -y postgresql12-server 出现错误:Error: Failed to download metadata for repo \\\'pgdg-common\\\': repomd.xml GPG signature verification error: Bad GPG signature 此时只

    2024年04月13日
    浏览(39)
  • 离线安装配置linux环境(centerOS7离线安装nginx、postgis、redis、minio、kkview、jdk、docker)

    注意 本文所涉及资源地址 所需前置知识(会的可以忽略) 关于yum downloadonly 离线安装docker教程 查看系统中是否已安装 gcc 如果显示版本号,则说明已经安装 否则进行如下安装操作 进入 /usr/local/nginx_package/gcc 目录,执行以下命令安装gcc: 解压 安装 其中​–nodeps​表示忽略依

    2024年02月04日
    浏览(54)
  • Windows下载安装 PostgreSQL和PostGIS工具,并解决The pgAdmin 4 server could not be contacted:

    目录 一、PostgreSQL下载安装 二、PostGIS工具软件下载 三、测试:使用paAdmin4管理数据库 解决The pgAdmin 4 server could not be contacted:  (1)这里使用 EnterpriseDB 来下载安装,EnterpriseDB 是全球唯一一家提供基于 PostgreSQL 企业级产品与服务的厂商。 下载地址:Download PostgreSQL。 根据自己

    2024年02月05日
    浏览(86)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包