mssql2005

关注公众号 jb51net

关闭
首页 > 数据库 > mssql2005 > com+ 安装和配置程序集

无法在com+ 目录中安装和配置程序集 错误:-2146233087的解决方法[已测]

作者:

最近从脚本之家下载sql2005的部分朋友反应无法安装sql2005,今天在安装SQL Server2005时碰到了这个错误,到网上搜了一下,找到了解决办法,特记在这里,以备以后需要。
1、sql2005下载地址 https://www.jb51.net/softs/2190.html 注意了,要下载947M的那个文件,不对的注意下
一般情况下安装的时候如果提示com+有问题就事先解决下,不要等安装到最后了,再来,我是通过第二种方法解决的,而且是中止以后重新安装的,一切正常。

第一种错误显示:

无法在com+目录中安装和配置程序集 错误:-2146233087
无法在com+目录中安装和配置程序集c:\program files\Microsoft SQL Server\90\DTS\tasks\microsoft.sqlserver.MSMQTASK.DLL.
错误:-2146233087
sql server 安装时"无法在COM+目录中安装和配置程序"的解决办法:
无法在COM+目录中安装和配置程序集,C:\program files\microsoft SQL Server\90
\NotificationServices\9.0.242\Bin\microsoft.sqlserver,notificationservices.dll。
错误:-2146233087
错误消息:Unknown error 0x80131501
错误说明:事务管理器可用。(异常来自HRESULT:0x8004D01B)

【解决办法】

这时候可以暂停安装,不要点击中止、忽略,也不要点击取消

按以下步骤
1.删除注册表中的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
HKEY_CLASSES_ROOT\CID
2、使用cmd执行 停止MSDTC服务:net stop msdtc
3、使用cmd执行 卸载MSDTC服务:msdtc -uninstall
4、使用cmd执行 重新安装MSDTC服务:msdtc -install
点击重试就可以继续安装了。
如何处理 SQL Server 安装过程中的 COM+ 检查失败问题

第二种错误显示:

COM+ 目录要求 (警告)
消息: COM+ 目录要求 如果 SQL Server 安装程序失败,安装程序将回滚所安装的系统,但可能不会删除所有 .manifest 文件。解决方法是重命名这些文件,然后重新运行安装程序。有关详细信息,请参阅“如何处理 SQL Server 安装过程中的 COM+ 检查失败问题”。
在装SQL Server 2005到系统检查配置时遇到上面的问题,我的解决思路是:
先把以COM+开头的服务全部启用,接着是把DTC这个服务启动(注意:这个服务是一定要启动的哦,如果有启动不了的可参考:Distributed Transaction Coordinator 服务不能启动解决办法。之后再重新安装,这个错就解决掉了。其实可以略过第一步(以COM+开头的服务全部启用)的,只要能把DTC这个服务启动就没什么问题的。
以下是微软官方提供的解决方案:<如何解决 SQL Server 安装程序中的 COM+ 系统配置检查失败问题>:
Microsoft SQL Server 2005 安装程序检查 COM+ 是否已正确配置。如果发现配置错误,安装程序仍将继续,但是在系统配置检查 (SCC) 报告中显示以下警告:
“如果 SQL Server 安装程序失败,安装程序将回滚所进行的安装,但可能不会删除所有的 .manifest 文件。解决方法是重命名这些文件,然后重新运行安装程序。”
如果未运行 Microsoft 分布式事务处理协调器 (MS DTC),或者,在使用 Microsoft 群集服务器的情况下,如果 MS DTC 不是群集资源,则可能会发生 COM+ 错误。COM+ 依赖于 MS DTC,而 Integration Services 中的消息队列任务依赖于 COM +。如果出现 COM+ 错误,则只有将 COM+ 系统正确配置后,Integration Services 中的消息队列任务才可用。
若要使用消息队列(亦称 MSMQ),请确保 MS DTC 正在运行并且已正确配置。如果 SQL Server 安装在群集上,则 MS DTC 必须是群集资源。

按照下列过程重新安装 COM+ :

一:安装组件服务管理单元

1>在 Windows 桌面上,单击“开始”,然后单击“运行”。
2>在“打开”框中,键入 MMC,然后单击“确定”。
3>在“控制台”窗口中,单击菜单栏上的“文件”,然后单击“添加/删除管理单元”。
4>在“添加/删除管理单元”窗口,单击“添加”。
5>在“添加独立管理单元”窗口,从管理单元列表中选择“组件服务”,然后单击“添加”。
6>单击“关闭”以关闭“添加独立管理单元”窗口,然后单击“确定”以关闭“添加/删除管理单元”窗口。
在“控制台根节点\组件服务”窗口,展开“组件服务”树。这就是当 COM+ 出现问题时,错误消息可能发生的地方。
再次运行 SQL Server 2005 安装程序。如果收到错误消息,请重新安装 COM+。

二:重新安装 COM+

1>从控制面板的“添加或删除程序”中,单击“添加/删除 Windows 组件”。
2>在“Windows 组件向导”中,不对选择做任何更改,单击“下一步”。
3>一直单击以完成向导,然后再次运行 SQL Server 2005 安装程序。

无法在 COM+ 目录中安装和配置程序集 microsoft.sqlserver.notificationservices.dll

安装SQL Server 2005的时候,出现错误,错误对话框的内容没有记录下来,不过Summary.txt(Summary.txt 位于%ProgramFiles%\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Hotfix)文件中有如下信息。
Machine : ServerName
Product : Client Components
Error : Failed to install and configure assemblies C:\Program Files\Microsoft SQL Server\90\NotificationServices\9.0.242\Bin\microsoft.sqlserver.notificationservices.dll in the COM+ catalog.
Error: -2146233087
Error message: Unknown error 0x80131501
Error description: The Transaction Manager is not available. (Exception from HRESULT: 0x8004D01B)

微软提供的解决办法如下:
To work around this problem, make sure that the Distributed Transaction Coordinator service runs under the NT AUTHORITY\NetworkService account. To do this, follow these steps:1. Click Start, click Run, type Services.msc, and then click OK.
2. In the Services window, double-click the Distributed Transaction Coordinator service.
3. In the Distributed Transaction Coordinator Properties dialog box, click the Log On tab.
4. On the Log On tab, specify the NT AUTHORITY\NetworkService account to be the logon account if the logon account is not the NT AUTHORITY\NetworkService account.

Note You are prompted to restart the Distributed Transaction Coordinator service if the following conditions are true:• You change the logon account of the Distributed Transaction Coordinator service.
• The Distributed Transaction Coordinator service is running before you change the logon account.

5. Start the Distributed Transaction Coordinator service if it is not started.

但是在启动时如果出错,错误代码为1073337669 的话,在命令提示符里输入
msdtc -resetlog

注:这种错误我只有在安装VS2005时不选择SQL Server组件,后来再安装SQL Server时才出现。
您可能感兴趣的文章:
阅读全文