1.导入栅格数据

进入PostgreSQL\bin目录,利用raster2pgsql工具导入栅格数据,具体命令如下所示:

<!-- 分块,切片存储到PostGIS数据库中 -->
raster2pgsql -s 4326 -I -C -M E:/personalfile/cs1/alt.tif -F -t 256x256 public.alt | psql -h localhost -p 5432 -U postgres -d rastertest -W <!-- 以单个文件方式存储到PostGIS数据库中 -->
raster2pgsql -s 4326 -I -C -M E:/personalfile/cs1/alt.tif public.alt | psql -h localhost -p 5432 -U postgres -d rastertest -W

创建mosaic数据表,并将已导入的栅格数据,插入到相应字段中,具体SQL语句如下:

/* 新建MOSAIC数据表 */
create table MOSAIC (NAME varchar(254) not null,
TileTable varchar(254)not null,
minX FLOAT8,minY FLOAT8, maxX FLOAT8, maxY FLOAT8,resX FLOAT8, resY FLOAT8,
primary key (NAME,TileTable));
/* 插入alt栅格数据表 */
insert into MOSAIC(NAME,TileTable) values ('oek','alt');

导入成功后,如下图所示:

2.发布PostGIS栅格数据

准备connect.pgraster.xml.inc文件,配置PostgreSQL连接参数:

<connect>
<dstype value="DBCP"/>
<username value="postgres"/>
<password value="123456"/>
<jdbcUrl value="jdbc:postgresql://localhost:5432/rastertest"/>
<driverClassName value="org.postgresql.Driver"/>
<maxActive value="10"/>
<maxIdle value="0"/>
</connect>

准备mapping.pgraster.xml.inc文件,配置mosaic数据表参数:

<spatialExtension name="pgraster"/>
<mapping>
<masterTable name="mosaic" >
<coverageNameAttribute name="name"/>
<maxXAttribute name="maxX"/>
<maxYAttribute name="maxY"/>
<minXAttribute name="minX"/>
<minYAttribute name="minY"/>
<resXAttribute name="resX"/>
<resYAttribute name="resY"/>
<tileTableNameAtribute name="tiletable" />
</masterTable>
<tileTable>
<blobAttributeName name="rast" />
</tileTable>
</mapping>

准备oek.pgraster.xml文件,配置栅格数据参数:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE ImageMosaicJDBCConfig [
<!ENTITY mapping PUBLIC "mapping" "mapping.pgraster.xml.inc">
<!ENTITY connect PUBLIC "connect" "connect.pgraster.xml.inc">
]> <config version="1.0">
<coverageName name="oek"/>
<coordsys name="EPSG:4326"/>
<!-- interpolation 1 = nearest neighbour, 2 = bipolar, 3 = bicubic -->
<scaleop interpolation="1"/>
<axisOrder ignore="false"/>
&mapping;
&connect;
</config>

将准备好的三个文件放在同一文件夹中,打开GeoServer,新建栅格数据源,如图所示:

栅格数据源

配置连接参数

发布栅格数据,参数配置及效果如下图所示:

一般都会自动识别的,不用修改

参考 :https://www.giserdqy.com/gis/opengis/geoserver/14055/

如何利用GeoServer发布PostgreSQL/PostGIS中的空间数据

GeoServer官方教程:使用图像镶嵌插件组织并发布时间序列栅格数据 - 知乎 (zhihu.com)

GeoServer 发布PostGIS数据库中的栅格数据的更多相关文章

  1. 开源WebGIS实施方案(四):GeoServer发布PostGIS数据

    GeoServer可以支持多种格式的数据源,本文只介绍其中一种,即PostGIS数据源. 新建一个工作区.工作区这个名字也是一变再变,早前叫做目录,后来改为工作空间,如今已变为工作区了. 添加数据存储 ...

  2. 使用GeoServer发布shp数据为WMS服务和WFS服务

    使用GeoServer发布shp数据为WMS服务和WFS服务 1安装GeoServer 2使用GeoServer上传数据 3使用GeoServer发布数据为WMS和WFS 看完本教程,你将学会安装Ge ...

  3. GeoServer发布Shapfile、PostGIS数据

    GeoServer发布Shapfile.PostGIS数据 一.GeoServer发布Shapfile数据 1.1 创建工作区 1.1.1 工作区 1.2 在工作区中加入新的数据存储 1.2.1 数据 ...

  4. GeoServer 发布的图层预览不了

    说明: 在用Geoserver发布Postgis发布的图层后,去LayerPreview中预览,但是选openlayers时,没有跳转到预览页面,而是弹出了下载WMS. 解决方案: 用KML方式预览时 ...

  5. Geoserver+Postgresql+PostGIS 进行数据发布

    1.postgressql+postgis安装 由于我已经安装了,因此没法进行截图,给出下载地址 下载地址:https://www.postgresql.org/ 记得一定要下载edu的版本 因为这个 ...

  6. 在IDEA中已经配置postgis数据库驱动并且能在Java类中连接数据库,但在servlet中无法连接数据库且导致Tomcat自动断开连接的解决方案

    最近在IDEA中用JDBC连接PostgreSQL数据库时遇到了这样一个奇怪的事情: 从PostgreSQL JDBC Driver官网下载好JDBC驱动之后,在IDEA的Project Struct ...

  7. JavaWeb和WebGIS学习笔记(三)——GeoServer 发布shp数据地图

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  8. Geoserver发布Oracle数据

    在Geoserver安装包中,默认是不能发布Oracle数据库里的数据的,只能发布postgis.shp等数据,详细如截图: 如果想发布oracle数据,得安装相应版本的关于oracle数据源的插件, ...

  9. GeoServer+PostgreSQL+PostGIS+pgRouting实现最短路径查询

    一.软件安装 GeoServer下载地址: http://geoserver.org/download/ PostgreSQL下载地址: https://www.postgresql.org/down ...

  10. 搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3

    Web GIS系列: 搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3 使用GeoServer+QGIS发布WMTS服务 使用GeoSe ...

随机推荐

  1. 【TS】class类和接口

    class可以用来做数据的存储与回显,能将页面的数据分离出来并提取到class内,函数也可以抽离到class,实例化class进行调用.ts中的class类与js的class类基本相同,不同点在于ts ...

  2. [java安全基础 01]SQL+反序列化

    tomcat Servlet 什么是servlet Java Servlet是运行在 Web 服务器或应用服务器上的程序.它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库或 ...

  3. sqllabs靶场less1-4

    less1-4 语法:Select 列名称 from 表名称 (where column_name='xxx' and -) 在数据库中: information_schema:存放和数据库有关的东西 ...

  4. 修改安卓ID为硬件唯一ID

    前言: 最近接到个需求,我们新产品上的外包侧APP需要使用硬件唯一ID(不管怎么升级怎么操作,ID始终不变和硬件绑定),用来做权限校验. 由于了解到安卓ID或序列号都会在擦除升级后重新随机生成,所以这 ...

  5. CCRD_TOC_2007_EULAR专辑_2

    中信国健临床通讯 EULAR 2007专辑II 目录 类风湿关节炎 1 Etanercept联合MTX治疗RA导致炎症与骨破坏进展之间的失关联也见于单关节水平:来自TEMPO的研究数据 Landewe ...

  6. mysql数据库总是锁表

    有可能是数据库服务器的磁盘空间满了

  7. element-ui的collapse中嵌套table表格 的 高度跳跃 问题

    <script src="//unpkg.com/vue@2.6.10/dist/vue.js"></script><script src=" ...

  8. RDD编程练习

    一.filter,map,flatmap练习: 1.读文本文件生成RDD lines 2.将一行一行的文本分割成单词 words 3.全部转换为小写 4.去掉长度小于3的单词 5.去掉停用词 6.练习 ...

  9. Anaconda jupyter notebook 出现 kernel error 解决办法

    kenel出现错误如图: 解决办法 首先打开Anaconda Prompt输入jupyter kernelspec list查看安装的内核和位置进入安装目录,打开kernel.jason, 查看pyt ...

  10. vue框架4

    购物车案例 v-model进阶 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...