Environment variables 如何在Geoserver中更改系统变量

Environment variables 如何在Geoserver中更改系统变量,environment-variables,size,shapefile,geoserver,Environment Variables,Size,Shapefile,Geoserver,我使用的是Linux,我使用的是postgresql-geoserver-openlayers。 我想用GeoServer显示一个shapefile。我将其存储在Postgresql中,并在Geoserver上导入表。形状文件的大小为2.2GB。 当我想用Openlayers查看器(在Geoserver上)显示我的shapefile时,我会有一个白色屏幕,此错误是日志: 错误[geoserver.ows]org.geoserver.platform.ServiceException:呈现过程失败

我使用的是Linux,我使用的是postgresql-geoserver-openlayers。 我想用GeoServer显示一个shapefile。我将其存储在Postgresql中,并在Geoserver上导入表。形状文件的大小为2.2GB。 当我想用Openlayers查看器(在Geoserver上)显示我的shapefile时,我会有一个白色屏幕,此错误是日志:

错误[geoserver.ows]org.geoserver.platform.ServiceException:呈现过程失败。。。。 原因:java.lang.RuntimeException:org.postgresql.util.PSQLException:错误:无法写入tuplestore临时文件:设备上没有剩余空间,其中:SQL函数“st_force_2d”语句2

我在这里看到:,这是shapefile的限制大小是2GB,但是我们可以修改这个限制,改变系统变量GS\u SHP\u MAX\u size。
我该怎么做?我在网上查过了,但找不到解决办法。

在你提到的链接中说:

可以通过将GS_SHP_MAX_SIZE和GS_DBF_MAX_SIZE系统变量设置为不同的值来修改这些限制

所以我认为它类似于
GEOSERVER\u DATA\u DIR
config

对于二进制文件安装:您应该更改OS系统变量。我不确定,但命令是这样的:

$ export GS_SHP_MAX_SIZE=Limit of .shp size in bytes
$ export GS_SHP_MAX_SIZE=3000000000
如果不起作用,请在Linux区搜索更改系统变量

对于web存档安装:您应该更改web服务器或地理服务器配置。有两种方法:

  • 上下文参数:在
    web-INF
    文件夹中查找并编辑
    web.xml
    。然后在根元素(
    标记)添加此上下文参数

  • 更改java系统属性时要小心!这将影响整个Apache tomcat,并可能导致安装的其他web应用程序出现问题。

    您的磁盘已满,这与ShapeFile无关。谢谢您的回复。在控制台中执行printenv时,没有GS_SHP_MAX_SIZE变量。我安装了Geoserver,并在答案中添加了web存档…@DamTan web存档解决方案。希望有帮助
    <context-param>
        <param-name>GS_SHP_MAX_SIZE</param-name>
        <param-value>Limit of .shp size in bytes</param-value>
    </context-param>
    
    $ export CATALINA_OPTS="-GS_SHP_MAX_SIZE=Limit of .shp size in bytes"
    $ export CATALINA_OPTS="-GS_SHP_MAX_SIZE=3000000000"