一、将 SHP 数据导入到 PostGIS 数据库
- 安装所需软件和环境,需要 PostgreSQL 数据库文件创建和存储软件以及 PostGIS 空间数据导入工具软件。以下是推荐安装的版本,首选稳定性。
- PostgreSQL 15:用于创建数据库和管理数据。
- PostGIS Bundle PG15:用于导入具有空间属性的数据到创建的数据库里面,根据 PostgreSQL 的版本来下载相对应的版本。
- 打开 PostgreSQL 软件下面的 pgAdmin 模块,输入密码(该密码就是安装该软件的时候设置的密码)。
- 刷新网址就可以看到软件界面都变成中文显示。
- 创建数据库:右键左边栏的数据库然后创建一个新的数据库,数据库命名,然后选择数据库的用户(postgres),创建好数据库之后还没有结束。
- 数据确定导入:设置好 SRID 后点击导入,导入成功之后就可以使用 pgAdmin 软件打开数据库然后进行 SQL 语句查询。
连接数据库:点击最上方的【View connection details…】选项然后填写导入的目标数据库相关信息。
空间数据导入到 SQL 数据库:首先打开安装的 PostGIS 软件中的(PostGIS Post Boundle 1 for PostgreSQL *64 15 Shapefile and DBF Loader Exporter)模块,然后点击添加文件,将需要导入的矢量文件选中。
接下来要设置里面的 SRID 码,该代码就是指代该空间数据的地理或投影坐标系的编号,我们可以使用 ArcMap 软件打开该矢量数据,然后查看该数据属性(源)就可以获取该矢量数据的 SRID 码。
创建数据库拓展服务:选中新建的数据库,然后点击扩展功能。
该功能框进入到数据库查询界面,在该界面输入 create extension postgis; 然后点击运行按钮(▶)就可以启动拓展服务。
设置软件中文显示:在设置中配置语言为中文即可。
二、将 PostGIS 数据库中的数据发布成标准地图服务
- 需要安装的软件或者应用有:
1.1 先安装 Java 的运行环境(安装可以存放到 D 盘),安装结束后可以配置运行路径,然后打开 cmd(win + r)输入:java -version。
1.2 然后安装 Tomcat 服务器,该安装路径要与 Java 的安装路径是一致的,安装过程中需要注意的是有一个安装用户和密码的设置,后续使用 Tomcat 登录服务器访问 GeoServer 服务然后登陆使用的账号就是这个。
访问 localhost:8080 端口查看是否可以成功访问。
1.3 安装 GeoServer:将【geoserver.war】压缩包文件裁剪然后粘贴到 (./Tomcat7.0/webapps) 的目录下就可以了,粘贴后会自动出现一个 geoserver 文件夹(或者可以手动解压到该文件夹目录下)。至于该安装包的下载可以直接访问 GeoServer 官网。
- 安装所需的软件之后我们可以基于以下两个步骤来访问到 GeoServer 网站。
2.1 步骤一:访问 Tomcat 软件的端口 localhost:8080,然后在该网页点击【Manage App】输入账号和密码(这里的信息就是安装 Tomcat 时设置的账号和密码,一般为 admin 和 123456),进去管理员的界面,我们要点击启动 GeoServer,启动服务。
2.2 步骤二:直接输入网址:http://localhost:8080/geoserver/web/ 就可以跳转到 GeoServer 网址(当然这两种方法都是在已经启动 Tomcat 服务器的前提下),进入网址之后也要登录用户(这里登录的与 Tomcat 那里登录的用户和密码是一样的)。
添加新的数据存储:点击【数据存储】,然后点击【添加新的数据存储】,在对话框里面选择要导入的数据类型的数据库,我们导入的是矢量数据,所以将里面的数据库数据添加到新的数据工作区,这里选择 PostGIS 来导入矢量数据。
接下来还要设置几个参数:
GeoServer 创建新的工作区:点击左边菜单栏的【工作区】,然后点击【添加新的工作区】,给新建的工作命名,命名空间也是随便(有一定格式),除此之外还要选择服务(这里选择 WMS 和 WFS 服务,WFS 服务开启方便后续进行数据动态更新和修改与序列化),最后可以点击【提交】。
4.1 工作区:选择刚刚新建的工作区。 4.2 数据源名称:这里是自己新命名一个新的名称(建议英文)。 4.3 database:选择要导入的数据库(本次在 PostgreSQL 15 新建的数据库名称)。 4.4 user:数据库的拥有者,一般为 postgres。 4.5 passwd:数据库的密码(就是在 pgAdmin 那里新建的数据库的密码)。
- 出现问题:通过导入数据库的形式来发布数据库的空间数据但是没有自动跳转到发布的界面,这时候你需要确定新建的工作区是否选择服务,确定选择服务了之后就点击左边菜单栏的【服务】里面的【WMS】,然后再此界面选择新建的工作区,就可以发布连接的数据库里面的数据表作为新图层了。


