ArcSDE 10.1 For Windows 创建空间数据库与常见错误_SQL Server

本文是2013年时候参加ESRI竞赛,创建ArcSDE 10.1 for SQL Server时候出问题了,因此写了该文档。

由于一直忙于学习,忘了发布。今天一师弟也遇到同样问题,为此我觉得可能有不少人遇到该问题,

所以和大家一起分享一下,请大家批评指正。

1、创建地理数据库

1.1、打开地理数据库管理工具

在工具箱中新增了“地理数据库管理”(英文版显示:GeodatabaseAdministration)工具集,其中包含进行地理数据库管理操作的若干工具,如下图所示:

 

1.2、创建企业级地理数据库

双击打开“创建企业级地理数据库”工具,输入参数,如下图所示:

 

 

参数说明:

数据库平台:本文选择SQL_Server,毫无争议;

实例:需要填写SQL Server实例名,本文是“localhost”;

数据库:地理数据库名称,默认是sde,也可以填其他名称比如:本文中“sde1”;

授权文件:授权文件,即.ecp文件,一般和ArcGIS Server的授权文件是同一个;

其他就是输入数据库管理员,地理数据库管理员的密码。

设置好参数后,点击“确认”开始创建地理数据库,此过程即相当于原来的Post Install,将创建SDE系统表等。

 

创建完成后,可以在SQL Server Management Studio中查看结果,如下图:

 

 

如果参数设置正确,就能看到数据库已经多了sde库,其中有sde系统表。如果出现错误,除了检查输入的参数、许可文件之外,数据库连接配置也需要检查,

1.3常见数据库连接错误

如下图:

 

1.3.1、SQL Server版本不一致

如果数据库服务器上装了SQL Server2008 R2企业版,并且是SP3补丁,而我在客户端则是装的SQL Server Express,并且没有打补丁,所以连接会失败,创建地理数据库也就自然失败了。因此需要确保客户端和服务器端的SQL Server版本一致,能成功连接。

1.3.2、没打ArcGIS Desktop SP1补丁

如果服务器装了SQL Server 2012则需打ArcGIS Desktop SP1补丁,否则也会报以上错误。(这个问题是在师兄指点下,才发现的)

1.3.3实例名错误

网上有博主填写形式如:“服务器名/SQL Server实例名”,但我试过了,总是报访问DBMS服务器失败,但ArcGIS10.1帮助文档却也要求这样填写。如果按照帮助文档形式填写参数,结果还是失败的话。建议试一下,直接填写服务器名,我测试过,可以成功创建。

2、连接

地理数据库已经创建成功,接下来就可以连接到地理数据库了。ArcGIS 10.1中推荐使用直连方式连接,因此默认情况下没有创建SDE系统服务。

2.1、直连连接

直连连接比较简单,在“数据库连接”下面双击“添加数据库连接”,如下图:

 

弹出直连参数设置窗口,设置直连参数,如下图:

 

注意这里的Instance,和创建地理数据库时的需要保持一致,然后选择要连接的地理数据库,输入用户密码,点击OK,即可连接,如下图:

 

目前还是空库,接下来我们测试将Shapefile要素类导入这个SDE库中,结果如下:

 

说明直连方式已经可以正常使用ArcSDE库了。

2.2、       服务连接

除了推荐的直连方式,有时候我们还需要使用服务连接的方式,需要首先创建ArcSDE服务,然后在客户端以.sde连接文件的方式来连接地理数据库。

2.3、       创建ArcSDE服务

创建ArcSDE服务需要经过三个主要步骤:手动修改服务文件、命令行安装服务、启动服务。

首先是手动修改服务文件,包括ArcSDE的service.sde文件和Windows系统的service文件,如下面两个图:

 

更改services文件,文件路径如下:

C:\Windows\System32\Drivers\etc

 

在这两个文件中,分别添加“esri_sde    5151”并保存,如下图所示:

 

 

 

然后使用命令行创建ArcSDE服务,本例命令行如下:

sdeservice -o create -d SQLSERVER,localhost -psde -i esri_sde

执行结果如下图所示:

 

创建成功后即可启动服务,命令行如下:

Services.msc

执行后将要求输入sde用户密码,然后即可启动,如下图所示:

 

SDE服务已经启动,然后可以通过服务方式连接了。

2.4、创建服务连接文件

首先找到“创建ArcSDE连接文件”工具,如下图所示:

 

打开工具,输入参数,如下图所示:

 

这里需要设置SDE服务所在的机器名或IP(本例是localhost),SDE服务名称(本例是esri_sde或5151),此外输入数据库名称(本例是sde)以及用户名密码。

点击“确认”即可完成.sde服务连接文件的创建,然后到指定目录下找到连接文件,双击即可连接到地理数据库,如下图所示(上面直连测试中导入的数据清晰可见):

 

说明服务连接方式已经可以正常使用ArcSDE库了。

2013年7月18日星期四

JXUST GIS实验室 火艇

posted @ 2015-01-27 10:13  火艇  阅读(2082)  评论(0编辑  收藏  举报