ArcSDE For DB2的开发模式

原创 2011年01月14日 20:29:00

以前就知道ArcSDE for Oracle是使用OCI(Oracle Call Interface)开发出来的(已经与esri美国工程师确认过)。

但是一直不知道ArcSDE for DB2是拿DB2哪个模式开发的,从ArcSDE的动态库和执行文件中可以看出一些端倪。

如查看ArcSDE的服务进程文件所调用的DB2的动态库:

192.168.100.228 [sde bin]$ ldd giomgr
        libsdedb2srvr100.so => /home/sde/db2/sdeexe100/lib/libsdedb2srvr100.so (0x00002b3788e72000)
        libsde.so => /home/sde/db2/sdeexe100/lib/libsde.so (0x00002b37899cc000)
        libsg.so => /home/sde/db2/sdeexe100/lib/libsg.so (0x00002b3789f92000)
        libpe.so => /home/sde/db2/sdeexe100/lib/libpe.so (0x00002b378a0f2000)
        libdb2.so.1 => /usr/lib64/libdb2.so.1 (0x00002b378a625000)
        libxerces-c.so.27 => /home/sde/db2/sdeexe100/lib/libxerces-c.so.27 (0x00002b378c15e000)
        libicuuc.so.40 => /home/sde/db2/sdeexe100/lib/libicuuc.so.40 (0x00002b378c648000)
        libicudata.so.40 => /home/sde/db2/sdeexe100/lib/libicudata.so.40 (0x00002b378c892000)
        libXm.so.3 => /usr/lib64/libXm.so.3 (0x00000035b2c00000)
        libXmu.so.6 => /usr/lib64/libXmu.so.6 (0x00000035b2000000)
        libXp.so.6 => /usr/lib64/libXp.so.6 (0x00000035b2800000)
        libXt.so.6 => /usr/lib64/libXt.so.6 (0x00000035c3e00000)
        libSM.so.6 => /usr/lib64/libSM.so.6 (0x00000035b8c00000)
        libICE.so.6 => /usr/lib64/libICE.so.6 (0x00000035b7c00000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00000035b4800000)
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00000035b3c00000)
        libg2c.so.0 => /usr/lib64/libg2c.so.0 (0x00002b378d6da000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b378d915000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000035b1c00000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00000035c3a00000)
        libm.so.6 => /lib64/libm.so.6 (0x00000035b1800000)
        libc.so.6 => /lib64/libc.so.6 (0x00000035b1400000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000035bfa00000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002b378db33000)
        libpam.so.0 => /lib64/libpam.so.0 (0x00000035be600000)
        libdb2dascmn.so.1 => /home/db2inst1/sqllib/lib64/libdb2dascmn.so.1 (0x00002b378dd6b000)
        libdb2g11n.so.1 => /home/db2inst1/sqllib/lib64/libdb2g11n.so.1 (0x00002b378df92000)
        libdb2genreg.so.1 => /home/db2inst1/sqllib/lib64/libdb2genreg.so.1 (0x00002b378e817000)
        libdb2install.so.1 => /home/db2inst1/sqllib/lib64/libdb2install.so.1 (0x00002b378ea54000)
        libdb2locale.so.1 => /home/db2inst1/sqllib/lib64/libdb2locale.so.1 (0x00002b378ec5f000)
        libdb2osse.so.1 => /home/db2inst1/sqllib/lib64/libdb2osse.so.1 (0x00002b378ee84000)
        libdb2osse_db2.so.1 => /home/db2inst1/sqllib/lib64/libdb2osse_db2.so.1 (0x00002b378f4e6000)
        libdb2trcapi.so.1 => /home/db2inst1/sqllib/lib64/libdb2trcapi.so.1 (0x00002b378f75f000)
        libXft.so.2 => /usr/lib64/libXft.so.2 (0x00000035c6200000)
        libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00000035b6c00000)
        libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00000035b5c00000)
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00000035b5000000)
        libjpeg.so.62 => /usr/lib64/libjpeg.so.62 (0x00000035b9000000)
        libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x00000035b6000000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00000035b3800000)
        libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00000035b3400000)
        /lib64/ld-linux-x86-64.so.2 (0x00000035b1000000)
        libaudit.so.0 => /lib64/libaudit.so.0 (0x00002b378f976000)
        librt.so.1 => /lib64/librt.so.1 (0x00002b378fb8e000)
        libexpat.so.0 => /lib64/libexpat.so.0 (0x00000035b5800000)
        libz.so.1 => /usr/lib64/libz.so.1 (0x00000035b2400000)

从上面的数据得出,SDE的动态库后台使用了8个DB2的动态库,感觉是拿DB2的cli开发的,然后查看了自己使用cli开发的应用程序,看看使用了哪些DB2的动态库。

[db2inst1@lstest cli]$ ldd dbuse
        libdb2.so.1 => /home/db2inst1/sqllib/lib64/libdb2.so.1 (0x00002b8f716d7000)
        libc.so.6 => /lib64/libc.so.6 (0x00000035b1400000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000035c3e00000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000035b1c00000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00000035b2000000)
        libpam.so.0 => /lib64/libpam.so.0 (0x00000035be600000)
        libm.so.6 => /lib64/libm.so.6 (0x00000035b1800000)
        libdb2dascmn.so.1 => /home/db2inst1/sqllib/lib64/libdb2dascmn.so.1 (0x00002b8f7322c000)
        libdb2g11n.so.1 => /home/db2inst1/sqllib/lib64/libdb2g11n.so.1 (0x00002b8f73454000)
        libdb2genreg.so.1 => /home/db2inst1/sqllib/lib64/libdb2genreg.so.1 (0x00002b8f73cd8000)
        libdb2install.so.1 => /home/db2inst1/sqllib/lib64/libdb2install.so.1 (0x00002b8f73f15000)
        libdb2locale.so.1 => /home/db2inst1/sqllib/lib64/libdb2locale.so.1 (0x00002b8f74121000)
        libdb2osse.so.1 => /home/db2inst1/sqllib/lib64/libdb2osse.so.1 (0x00002b8f74345000)
        libdb2osse_db2.so.1 => /home/db2inst1/sqllib/lib64/libdb2osse_db2.so.1 (0x00002b8f749a7000)
        libdb2trcapi.so.1 => /home/db2inst1/sqllib/lib64/libdb2trcapi.so.1 (0x00002b8f74c21000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00000035c3a00000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000035bfa00000)
        /lib64/ld-linux-x86-64.so.2 (0x00000035b1000000)
        libaudit.so.0 => /lib64/libaudit.so.0 (0x00000035b9000000)
        librt.so.1 => /lib64/librt.so.1 (0x00000035b2800000)

跟ArcSDE所使用的DB2的动态库是一样的。所以应该是拿DB2的cli开发的。

相关文章推荐

64位DB2和Oracle 32bit库

   在linux操作系统下,为了保证以前所开发的32程序能够在64位的DB2和Oracle数据库上继续运行,64bit的DB2和Oracle保留了32bit的C库,在64bit的数据库上,64bit...

UNIX 环境下C++编译运行常见错误

代码运行的时候报错 1.原因:读取内存越界 问题描述: 编译的时候出现如下告警,将int型的转化成unsigned型,导致越界。 warning: comparison between signed...

ARCSDE FOR DB2安装文档

  • 2011年07月05日 09:30
  • 5KB
  • 下载

ArcSDE 10 DB2 数据库要求

官网地址 http://resources.arcgis.com/zh-cn/content/arcsde/10.0/db2-system-requirements 支持的数据库版本 ...

Arcsde 9.3 db2 安装简单图解

  • 2009年11月28日 19:26
  • 408KB
  • 下载

搭建DB2 DPF(多分区) for Linux/Unix操作步骤

搭建DB2 DPF(多分区) for Linux/Unix操作步骤 多, 数据库, Linux 怎样搭建DB2 DPF for Linux/Unix? DPF 是 D...
  • zjh35
  • zjh35
  • 2012年12月19日 13:31
  • 1355

如何在客户端配置ODBC来访问远程DB2 for Windows服务器

本文详细地介绍了如何在客户端配置DB2 for Windows的ODBC数据源,然后又以“万能数据库查询分析器”的中文版本《DB 查询分析器》为工具,通过配置的ODBC数据源来访问远程基于Window...

DB2 for linux手动安装卸载步骤

DB2 for linux手动安装步骤第一步下载db2数据包当前最新版本为9.7,从IBM网站下载免费的Express C版本。db2exc_971_LNX_x86.tar.gz 及语言包db2exc...

ArcGIS Geodatabase for DB2安装指南

最近客户处碰到与DB2数据库相关的问题,因此部署一套DB2环境进行测试,将部署过程记录一下,以备参考:部署环境: DB2: V9.7 FP8 X64 For Windows OS: Window...

sql cookbook 数据库脚本 for db2

最近在看sql cookbook的电子书籍,故整了个数据库打算测试下相关sql脚本,网上都是sql servle和mysql的,自己看着改了下,以下是DB2脚本。 set schema="COO...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ArcSDE For DB2的开发模式
举报原因:
原因补充:

(最多只允许输入30个字)