简介
本文为实际操作出结果。过程均为每步一截图实时成果。如果中途出现其他问题可以评论或者私聊我。
主要内容包括了从postgresql和postgis安装到在arcgis中发布服务。
安装教程和发布服务教程在其他资源中也可以查阅。主要为连接数据库与导入阶段。主要解决了莫名其妙的错误error000210错误
。
文章目录
前期准备
ArcGIS Desktop10.2×32 程序安装
本文不提供安装包及教程。
所需数据下载地址
下载地址: https://pan.baidu.com/s/1176S-C4MnR453EBRZ1YLLA。密码:rc48
postgresql9.2.24×64 安装(一定要在postgis之前安装)
首先安装,打开postgresql9.2.24×64安装包
-
选择postgresql的安装目录
-
选择postgresql中data的安装目录(上一步选择好,这一步默认)
-
设置超级用户postgres的密码。(一定要记住,可以设置为123456或者post)
-
设置端口号(默认5432即可)
-
postgresql语言环境(默认)
-
取消勾选使用Stack Builder(需要科学上网)
-
完成安装后window菜单会有pgAdminⅢ的数据库管理程序,打开后使用刚才的密码成功连接数据库即可
postgis2.1.3×64 安装
postgresql安装成功后安装,打开postgis2.1.3×64安装包
-
勾选Create spatial database(完成安装后自动创建空间数据库检验安装)
-
安装目标路径选择刚才postgresql的安装目录
-
输入刚才设置的密码
-
设置空间数据库模板名称(默认即可)
-
安装即将完成时弹出三个确认框
- 你希望我们为你注册GDAL_DATA环境变量,以便光栅转换正常工作吗?——选择“是”
- 设置PasgsIsEnabLED驱动程序给普通驱动程序GTiff、PNG、JPEG、XYZ、DTDED、UGSDEM、AAIGrid?——选择“是”
- 启用db光栅?——选择“是”
- 你希望我们为你注册GDAL_DATA环境变量,以便光栅转换正常工作吗?——选择“是”
-
显示completed之后,点击Close关闭。
-
此时我们再次打开pgAdmin发现多了一个模板
-
至此postgis安装成功。
postgresql与ArcGIS10.2配置
st_geometry.dll文件
- 在Desktop安装目录 --> DatabaseSupport文件夹 --> postgreSQL文件夹 --> 9.2文件夹 --> Window64文件夹中找到st_geometry.dll文件。
- 将st_geometry.dll文件复制到postgresql安装目录 --> lib文件夹中。
5个32位dll文件
由于desktop是32位,postgresql是64位,所以我们配置时需要借助网络资源(在之前的下载地址中)
- 找到本文下载资源中的dll32中的文件(5个)
- libeay32.dll
- libiconv-2.dll
- libintl.dll
- ibpd.dll
- ssleay.dll
- 将这5个文件复制到Desktop安装目录 --> bin文件夹中,复制时选择全部替换。
6个文件都处理好后配置完成。
连接数据库与导入数据
我自己在导入时总失败。我在导入时总有error000210错误。经检查各类数据无误。
是因为没有为数据库添加模式。下面的过程是我看了其他博主的文章后操作成功的
文章链接:https://blog.csdn.net/eternity_xyf/article/details/80168029
总结:一定要为数据库添加模式。添加模式之后无论创建不创建企业级地理数据库都能导入成功
新建空间数据库
-
在pgAdmin中新建数据库名称为sample,所有者为postgres,模板为postgis_21_sample。
-
创建模式(从ArcGIS Catalog连接postgresql数据库导入数据时,数据库中必须有postgres模式)。执行如下语句并显示成功:
create schema postgres;
- 至此下面需要导入要素类的数据库便创建成功了
创建企业级地理数据库
在ArcMap中,找到并打开创建企业级地理数据库
工具
-
数据库平台选择PostgreSQL。
-
实例填入localhost(本机)。
-
数据库选择刚才创建的sample数据库。
-
数据库管理员为超级用户postgres。
-
数据库管理员密码为自己设置的密码
-
地理数据库管理员密码自己设定(要记住,可以设置为123456或者sde)
-
授权文件可以选择arcgis server的授权文件。
等待操作执行成功
数据库连接
在catalog中双击添加数据库连接
- 数据库平台选择PostgreSQL
- 实例为localhost
- 数据库身份验证:用户名为超级用户。密码为自己设置的密码
- 数据库选择刚才创建的sample数据库
连接成功后可以看到:
导入要素类
找出一个shp文件做测试。
在数据库连接右键 --> 导入 --> 单个要素类
选择好输入要素类。输出要素类的名称自定义。
导入成功
数据库数据发布要素服务
打开要素类
连接数据库,将数据库中的要素类拖入ArcMap
发布服务
打开 文件 --> 共享为 --> 服务。之后的过程不做赘述。不了解的可以去搜索一下。
注册数据
在此处选择Feature Access,进行分析。
分析得到未注册错误
选中错误右键 --> 显示数据存储注册页面,添加注册数据库
名称自定义,点击添加,配置数据库连接。完成后点击确定。
确定后需要重新分析
再次点击分析后点击发布,发布成功后可去arcgis server manger检查。