windows上安装db2 spatial extender和ArcSDE的问题
因客户的DB2版本是9.7的版本,所以测试环境也只能安装这个版本,但在ArcSDE的最小支持版本里至少需要V9.7 pack 4的版本,低于这个版本是不行的。
安装DB2和spatial extender
安装好DB2后创建空间数据库(假如名字叫mysdedb),这里最好能优化一下以下的配置:
1、注意创建数据库时的字符编码。 2、最好创建自己的缓存池(使用16或者32k的pagesize)。 create bufferpool sdepool size 12800 pagesize 32K create bufferpool sdepool1 size 12800 pagesize 32K 3、创建自己的表空间并使用自定义的缓冲池 CREATE REGULAR TABLESPACE regtbs PAGESIZE 32 K MANAGED BY DATABASE USING ( FILE 'C:\DB2\NODE0000\mysdedb\regtbs' 20g) bufferpool sdepool CREATE REGULAR TABLESPACE idxtbs PAGESIZE 32 K MANAGED BY DATABASE USING ( FILE 'C:\DB2\NODE0000\mysdedb\idxtbs' 10g) bufferpool sdepool CREATE LONG TABLESPACE lobtbs PAGESIZE 32 K MANAGED BY DATABASE USING ( FILE 'C:\DB2\NODE0000\mysdedb\lobtbs' 4g) bufferpool sdepool1 CREATE USER TEMPORARY TABLESPACE sdespace PAGESIZE 32 K MANAGED BY SYSTEM USING ('C:\DB2\NODE0000\mysdedb\sdespace' ) bufferpool sdepool1 4、优化相关配置 update db cfg for mysdedb using APPLHEAPSZ 2048 update db cfg for mysdedb using APP_CTL_HEAP_SZ 2048 update db cfg for mysdedb using LOGPRIMARY 10 update db cfg for mysdedb using LOGFILSIZ 1000 5、创建操作系统用户sde,并加入DB2ADMNS用户组中 6、授权sde管理mysdedb的DBA权限 grant DBADM on database to user sde
安装DB2 spatial extender,然后启用mysdedb的空间扩展支持
--可使用控制中心菜单进行启用也可以使用下面这命令 db2se enable_db mysdedb
注意:在启用空间支持的时候我弄了好几天才弄好,之前创建数据库是用sql来执行的,在启用这一步一直报错,后来用DB2控制中心来创建的数据库并启用就没报错。
启用企业级地理数据库:
1、在gis开发人员的本地DB2的空间中心添加mysdedb的连接配置:
并在host文件中添加 10.xx.xx.xx 机器名
2、在arcgis的目录窗口中添加数据库连接
这里理论上是可以配置直连的方式的,但是在后面的环节【启用企业级地理数据库】时会报错,而通过别名的形式就不会
直连的配置就是在数据源的输入框里输入:HostName=10.10.62.179;Port=50000;Database=mysdedb;
3、运行toolbox里的【启用企业级地理数据库】工具
指定上面第2步创建的数据库连接、授权文件然后就可以运行该工具,如果运行成功,则可进入下一步。
安装SDE:
我的版本是SDE 10.1 for DB2
1、下载并安装sde for db2。
2、运行如下命令:
sdeservice -o create -d DB2,DB2-0 -p 123456 sdeservice -o register -d DB2,DB2-0 -r ADMIN_DATABASE -v mysdedb sdemon -o start -p 123456
这里需要指出的是-d参数后的DB2的配置跟arcgis的官网的其实是不一样的,官方的说法是:
【DB2,DB2INSTANCE】 其实是【DB2,DB2的server name】(在window的服务里能看到)。
-p 参数是sde用户的密码