我移动了 Oracle Instant Client,但它实际上并没有移动?

我移动了 Oracle Instant Client,但它实际上并没有移动?

我在运行于 Windows Server 2012 的 IIS 上建立了本地内联网,使用 Oracle Instant Client 连接到我们的数据库。

我在安装过程中将 Oracle Instant Client 安装到了 C:\instantclient。它运行良好,已经使用了 12 个月。

为了保持 C:\ 整洁,我将文件夹复制到 C:\Program Files (x86)\instantclient 并更改了 PATH 中的路径。

这就是奇怪的地方:

我重新启动了服务器进行测试,打开了我们的本地内联网,因此我知道 Oracle Instant Client 正在使用中,并尝试删除 C:\instantclient 中的原始文件夹,但我被告知它正在使用中。

我删除了 C:\Program Files (x86)\instantclient 文件夹,本地内联网仍可继续工作。它显然使用的是 C:\instantclient 的原始文件夹,但为什么呢?

正如我提到的,我更新了 PATH 并重新启动。除了文件夹本身之外,此服务器上根本没有提到 C:\instantclient。

为什么它继续使用原来的文件夹?

答案1

您需要确保每个引用都已C:\instantclient被识别并更改至新位置。

PATH 只是一个变量。请查找TNS_ADMIN其他变量。

然后是 Windows 注册表。Instant Client 的某些组件(如 ODBC 或 OLEDB 组件)在 Windows 注册表中有条目。这些组件应始终通过提供的exebat脚本进行安装/卸载。

您是否正在使用任何其他插件、扩展或组件,它们自己的配置数据可能仍指向C:\instantclient

我认为这也是一个很好的教训,不要试图修复没有损坏的东西。服务器不关心C:\外观是否整洁,最终用户也不关心。

相关内容