我在启动OracleMTSRecoveryService
时遇到此错误:
Could not start the OracleMTSRecoveryService service on Local Computer.
Error 1: Incorrect function.*
此外,在安装ODAC服务期间启动失败。
OracleXETNSListener
也没有开始。我重新安装了ODAC,但问题仍然存在。
有什么建议?任何服务冲突?
查看注册表值HKEY_LOCAL_MACHINE\Software\Oracle\OracleMTSRecoveryService\Protid_0\
并确保主机名与您的计算机名称匹配。
刚刚更改了以下注册表:
第1步:在注册表中更新路径:
HKEY_LOCAL_MACHINE\system\controlset001\service\OracleMTSRecoveryService
为文件omtsreco.exe设置适当的imagepath条目
就我而言,它是:`E:\ app1 \ NAL65 \ product \ 11.2.0 \ dbhome_1 \ BIN
第2步:在注册表中更新主机:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ORACLE\OracleMTSRecoveryService\Protid_0
你喜欢它可能会受到影响:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\OracleMTSRecoveryService\Protid_0
默认情况下,DESKTOP-DESKTOP将其替换为原始版本。
第3步:重试
而已 !!!
安装Oracle DB 11g时,OracleMTSRecoveryService无法启动,安装进度为71%,但在我关闭防病毒程序(Avast Pro 15)并单击“重试”后,它对我有用。 AV防火墙可能是关键问题。
在127.0.0.1
中将Host文件的值从localhost更改为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\OracleMTSRecoveryService\Protid_0
点击重试也为我工作。单击重试后,安装继续进行,没有任何警告或错误。
这也适用于我,但注册表路径是错误的。我正在运行Windows 7和Oracle 11gR2客户端,注册表路径是:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\OracleMTSRecoveryService\Protid_0
这是注册表文件:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\OracleMTSRecoveryService\Protid_0]
"Name"="HTTP"
"Host"="putyourmachinesnamehere.com"
"Port"="2030"
我有Windows 7,我有同样的问题,但我的问题的原因是,我删除了原始的oracle文件夹从C:\ app ------ \ product \ 11.2.0 \ dbhome_1 \ BIN \ omtsreco.exe,所以这就是失败的原因。
这些步骤对我有用:)
这在Windows 7中对我有用:
“计算机\ HKEY_LOCAL_MACHINE \ SYSTEM \ controlset001 \服务\ OracleMTSRecoveryService”。
我确实打开了regedit并且服务器名称错误,因为我试图在我们的生产服务器的克隆副本上安装Oracle 11g软件。因此主机名仍然与生产服务器的主机名匹配。我右键单击Host并选择modify然后将服务器名称更改为我当前(克隆)的服务器名称
我有同样的问题,我的问题是我的tnsnames和监听器文件夹中的主机名错误来自C:\ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \ network \ ADMIN
这是在我的计算机进行域名迁移后发生的,因为它的名称已更改。
在我的例子中,它有助于将Oracle安装文件夹设置为PATH环境变量,例如到c:\ oracle \ odac。
这在Windows 7中对我有用:
1.打开注册表编辑器窗口,运行命令:regedit
2.更改以下注册表项值时保持错误窗口打开:
“计算机\ HKEY_LOCAL_MACHINE \ SYSTEM \ controlset001 \服务\ OracleMTSRecoveryService”。
3.搜索ImagePath值并更改实际安装Oracle的路径。在这种情况下是C:\ app \ myuser \ product \ 11.2.0 \ dbhome_1 \ BIN \ omtsreco.exe“OracleMTSRecoveryService”
4.返回错误窗口,然后单击“重试”。
并修复它!
对AndrewB非常感谢 - 这对我有用。
我也从sysinternals过滤器使用procmon.exe到达那里:
process = omtsreco.exe然后过滤以仅查看注册表项....必须更新新主机名(服务器的完整计算机名)。
再次感谢。
这个问题突然出现在Oracle 12c-32位(版本12.1.0.2.0)的服务上。对我来说,问题原来是一个或多个文件/文件夹的权限在:
C:\ ORACLE \客户\\产品\ 12.1.0 \ Client_1上
改变了导致手头错误的方式(在Windows事件日志中看到“权限被拒绝”)。我只是对C:\ oracle上的权限进行了递归更改,有效地在根文件夹下的所有用户和组中授予对C:\ oracle完全访问权限的完全访问权限。
关于这一切的奇怪之处在于,由于权限不足,只有32位oracle-service被堵塞了。我的64位oracle服务没有遇到类似的问题,这很奇怪。我不知道在哪里归因于打破32位服务的“自发权限调整”。去搞清楚 ...