You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用gdal_translate导出PostGIS栅格至GeoTIFF:子数据集选择问题

解决GDAL导出PostgreSQL栅格时的子数据集选择问题

首先,通过gdalinfo命令列出PostgreSQL数据源内的所有子数据集,明确每个子数据集的具体访问路径:

gdalinfo PG:"host=dem-db port=5432 dbname=dem user=postgres password=passwd"

执行后会输出包含SUBDATASETS的段落,其中每个SUBDATASET_X_NAME对应一个子数据集的完整路径,示例如下:

SUBDATASET_1_NAME=PG:"host=dem-db port=5432 dbname=dem user=postgres password=passwd schema=public table=dem_raster column=rast"
SUBDATASET_2_NAME=PG:"host=dem-db port=5432 dbname=dem user=postgres password=passwd schema=public table=corrupted_raster column=rast"

接下来,直接将正常的子数据集路径作为gdal_translate的输入,跳过损坏的子数据集。比如第一个子数据集正常可用,命令如下:

gdal_translate -of GTiff "PG:host=dem-db port=5432 dbname=dem user=postgres password=passwd schema=public table=dem_raster column=rast" output.tif

如果不确定哪个子数据集正常,可以单独用gdalinfo验证:

gdalinfo "PG:host=dem-db port=5432 dbname=dem user=postgres password=passwd schema=public table=dem_raster column=rast"

若输出无报错,说明该子数据集可正常读取。

之前使用-sds参数失效,是因为该参数会遍历所有子数据集(包括损坏的),导致命令执行失败。直接指定单个正常子数据集即可避开这个问题。

内容的提问来源于stack exchange,提问作者Alireza sherkatmaesum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 14:03:20