SuperMap对接PostGIS数据


本文详细介绍SuperMap如何对接PostgreSQL的空间数据扩展PostGIS 引擎数据。
一、软件下载
1、安装PostGIS必须先安装PostgreSQL。本文中所使用到的是9.5.1-1-X64版本
PostgreSQL安装包链接http://pan.baidu.com/s/1nvkORmL 密码:ixot
2、postgis_2_3_pg96.exe 安装过程中选择下载。
二、软件安装

  1. PostgreSQL选择安装目录
    这里写图片描述

2.设置密码以及端口号,默认的超级管理员 :poostgres
这里写图片描述
3.PostgreSQL安装完成
这里写图片描述
4.PostgreSQL安装完了后,点“Finish”,会打开Stack Builder,点下拉框选择我们本地安装的数据库。如果Finish界面没有勾选打开Stack Builder,也可以在开始—所有程序—PostgreSQL中打开此界面
这里写图片描述
5.选择postgis_2_3_pg96.exe,下一步,设置好下载路径就可以直接下载了。
这里写图片描述

6.下载完成后,安装PostGIS
这里写图片描述
7.安装同时默认创建空间数据库
这里写图片描述
8.设置安装路径
这里写图片描述
9.设置PostGIS用户名密码,默认端口:5432
这里写图片描述
10.设置空间数据库名
这里写图片描述
11.安装完成
这里写图片描述

12.安装好了后就可以先用pgAdmin III连接PostgreSQL数据库。
这里写图片描述

**三、数据库连接 **
数据库连接分两种情况:本地连接或者远程连接;
1、 本地连接直接服务地址使用127.0.0.1连接即可。
2、 远程连接
(1) 将postgre的依赖库拷贝到桌面bin包路径下面(libeay32.dll、libiconv-2.dll、libintl-8.dll、libpq.dll、ssleay32.dll),注意位数和桌面一致,依赖库在postgre安装Bin路径都有,目的是为了让打开或者新建数据源不是灰色的。
(2)修改postgresql.conf文件(data\postgresql.conf),将数据库服务器的监听模式修改为监听所有主机发出的连接请求。定位到#listen_addresses = ’localhost’。PostgreSQL安装完成后,默认只接受来自本机localhost的连接请求。将行开头都#去掉,将行内容修改为listen_addresses = “” 即允许数据库服务器监听来自任何主机的连接请求!在9.0 Windows版中,该项配置已经是“”无需修改。
(3)修改pg_hba.conf配置文件(data\pg_hba.conf),在该配置文件的host all all 127.0.0.1/32 md5行下添加以下配置host all all 192.168.1.0/24 md5,表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,并提供加密的密码验证。
其中,数字24是子网掩码,表示允许192.168.1.0–192.168.1.255的计算机访问!
这里写图片描述

四、新建PostGIS数据源:

DatasourceConnectionInfo info = new DatasourceConnectionInfo();
info.EngineType = EngineType.PGGIS;
info.Server = "127.0.0.1";//本地连接;
// info.Server = "XXX.X.X.XX";//远程连接,按照上一步配置好环境后,此处填写服务器Ip
info.Database = "cys";
info.User = "postgres";
info.Password = "postgres";
info.Alias = "cys123546";
Datasource datasource = m_workspace.Datasources.Create(info);

注意:当使用PostgreSQL的空间数据扩展PostGIS的时候,不安装PostGIS,只有PostgreSQL也能新建数据源成功,但是在创建好的数据源里面不能新建数据集之类的操作,必须安装PostGIS才能正常使用。下图就是在新建好的数据源里面添加了一个数据集。
这里写图片描述

转载自:https://blog.csdn.net/supermapsupport/article/details/78291912

You may also like...