• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
chenjh
博客园    首页    新随笔    联系   管理    订阅  订阅
为使用ST_Geometry SQL函数配置oracle的网络服务

访问存储在oracle中的ST_Geometry类型数据的SQL函数通过扩展oracle的external procedure agent或者extproc来实现,因此,直接使用这些SQL函数需要配置oracle的listener,让oracle能够找到这些扩展库。如果使用SDE读取这些数据,则不需要配置。
这些对ST_Geometry类型数据进行操作的函数是用PL/SQL实现的,在PL/SQL中其实是转调的使用c语言编写的外部扩展库(ST_SHAPELIB)。
关于oracle的listener的详细配置方法请参考oracle的相关文档,下面主要介绍一下默认情况下如何配置(windows下面)。
1) 找到oracle数据库的安装目录(服务器端),然后定位到oraclehome\NETWORK\ADMIN目录
2) 备份listener.ora文件,这点很重要,在对oracle的配置做任何更改的时候都要进行备份
3) 打开listener.ora文件,找到 (PROGRAM = extproc) 这一行,在这行下面添加对ST_SHAPELIB的引用,即指定ST_SHAPELIB的地址,如下:
(ENVS="EXTPROC_DLLS=C:\Program Files\ArcGIS\ArcSDE\ora10gexe\bin\st_shapelib.dll")
其中“C:\Program Files\ArcGIS\ArcSDE\ora10gexe\bin\st_shapelib.dll”为ST_SHAPELIB的物理路径,可以根据安装情况自己修改。
4) 保存listener.ora文件,重新启动监听程序。
barry
附录:
未修改前的listener.ora
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1
\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = zbc)(PORT = 1521))
    )
  )
修改后的listener.ora
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1
\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
(ENVS="EXTPROC_DLLS=C:\Program Files\ArcGIS\ArcSDE\ora10gexe\bin\st_shapelib.dll")
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = zbc)(PORT = 1521))
    )
  )

原文:http://bbs.esrichina-bj.cn/ESRI/thread-44890-1-1.html

 

posted on 2010-10-11 10:28  chenjh  阅读(391)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3