使用LDAP通过Oracle Instant Client查找名称
完全由于Oracle客户端的完整安装版本冲突或版本不完整,部分原因是我的开发团队(我是其成员)一直在使用Oracle Instant Client,并避免在大多数情况下在我们的开发计算机上安装新项目。效果非常好,甚至达到我们通过此设置部署到生产的程度。由于我们主要是.NET商店,因此我们使用的是本机客户端(带有.NET包装器),而不是Java。 现在,客户要求我们在LDAP服务器上注册数据库服务,并使用LDAP服务器进行名称查找。他们提供的文件sqlnet.ora和ldap.ora文件(以及随附的加密配置文件)看起来是正确的。特别是,该sqlnet.ora文件确实将LDAP指定为查找网络服务名称的可能来源: names.directory_path=(tnsnames,ldap) 我确信我正在使用的计算机可以使用LDAP访问服务,因为我可以使用SQL Developer(这使我可以直接输入LDAP信息)进行访问。假设它们是正确的,我如何才能使Instant Client识别此配置并使用LDAP进行名称查找? 到目前为止我尝试过的 我尝试将TNS_ADMIN环境变量设置为包含提供的文件的目录,尽管此方法对于使Instant Client识别tnsnames.ora文件效果很好,但似乎不足以让它开始查看LDAP。结果如下(更改了路径,用户名和密码): (以下命令碰巧是Windows命令提示符,但我想在Linux上也可以执行类似的操作。sqlplus这里也显示了Instant版本,并且在同一目录中附带有Instant Client二进制文件。) C:\TEMP>SET TNS_ADMIN=C:\path\to\sqlnet\ldap\and\tnsnames\ora\files C:\TEMP>echo %TNS_ADMIN% C:\path\to\sqlnet\ldap\and\tnsnames\ora\files C:\TEMP>sqlplus.exe USERNAME/PASSWORD@LOCALTNSNAME SQL*Plus: Release 11.2.0.2.0 Production on Mon Jul 7 10:22:25 2014 Copyright (c) 1982, 2010, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production …