在运行 Oracle 9.2.0.7 和 Windows 2003 Enterprise Edition SP2 的服务器上使用 OUI 应用 Oracle 9.2.0.8 补丁集时,我遇到了以下错误消息:
Error in writing to file 'C:\oracle\ora92\BIN\orapls9.dll'
[C:\oracle\ora92\BIN\orapls9.dll (he process cannot access
the file because it is being used by another process)]
在调用 setup.exe 之前我已经停止了 Oracle 实例和服务。
我的问题是:为什么会发生这种情况,以及如何解决此错误?
答案1
发生这种情况是因为某些正在运行的进程已加载一个或多个 Oracle DLL,必须停止后才能继续安装。有趣的部分是追踪它们。
首先,必须停止正在安装的 Oracle Home 中运行的所有服务,包括监听器、数据收集器等。
确保 Microsoft 分布式事务协调器服务已停止。
否则,请下载并安装进程探索器并用它来查找被投诉的 DLL。
进程资源管理器的替代方法(虽然它非常漂亮)是简单地使用任务列表(因为您知道有问题的 dll 的名称):
C:\>tasklist /m orapls9.dll Image Name PID Modules ========================= ======== ============================================ TNSLSNR.EXE 1664 orapls9.dll oracle.exe 1792 orapls9.dll oracle.exe 1836 orapls9.dll oracle.exe 1868 orapls9.dll oracle.exe 1884 orapls9.dll oracle.exe 1900 orapls9.dll oracle.exe 1916 orapls9.dll oracle.exe 1932 orapls9.dll oracle.exe 2028 orapls9.dll C:\>
答案2
停止服务“分布式事务协调器”
这行得通
图片来源:Somchid HP Thailand
答案3
停止正在执行的操作,然后使用任务管理器检查是否有任何 oracle 进程正在运行。如果有,则终止它们并重新启动。
答案4
只需停止“Microsoft 分布式事务协调器服务”之后就可以正常工作!
谢谢