配置st_geometry 时总是出错,提示sde extproc代理DLL路径无效
主要有三个地方
1、将arcgis安装路径下的st_shape.lib复制到路径C:\app\Administrator\product\11.2.0\dbhome_1\BIN中,形成路径C:\app\Administrator\product\11.2.0\dbhome_1
\BIN\st_shapelib.dll
2、在后台oracle服务端安装路径下,找到C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN
在其中找到文件listener.ora,先备份
修改其中的EXTPROC_DLLS,若有多个路径,用分号;隔开
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_1\BIN\st_shapelib.dll.so;c:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = HySvr111)(PORT = 1521))
)
)
ADR_BASE_LISTENER = c:\app\Administrator
3、在前端用sde登录
执行语句:
create or replace library ST_SHAPELIB as
'C:\app\Administrator\product\11.2.0\dbhome_1\BIN\st_shapelib.dll'
之后用select * from user_libraries
4、可以通过select * from dba_libraries where library_name='ST_SHAPELIB';查看是否有多个用户访问st_shapelib,如果有,都要执行将文件路径修改
create or replace library ST_SHAPELIB as
'C:\app\Administrator\product\11.2.0\dbhome_1\BIN\st_shapelib.dll'
5、重启oracle 监听服务和oracle服务