修正ConfigMgr数据库升级错误0x87d20b15

这篇文章包括修复ConfigMgr数据库升级错误0x87d20b15的解决方案。其他相关错误包括未能应用更新更改0x87d20b15和错误信息持久化在数据库中。

SCCM 2010热修复更新安装,我遇到ConfigMgr数据库升级错误0x87d20b15。我可能没有做先决条件检查在安装更新之前。但是,在安装步骤中更新失败。

修正ConfigMgr数据库升级错误0x87d20b15

如果您正在处理ConfigMgr数据库升级错误0x87d20b15,我将列出一些您可以尝试的解决方案。然而,检查日志文件是您必须做的第一件事。

PatchMyPC HorizontalAD
修补我的电脑赞助广告

在我的案例中,配置管理器2010热修复汇总KB4600089更新安装失败。我可以在ConfigMgr控制台的更新和服务节点中看到这个错误。注意,我们在这里只看到安装失败的消息,任何地方都没有错误0x87d20b15。

ConfigMgr更新安装失败
ConfigMgr更新安装失败

接下来,我们将在Monitoring部分查看更新包的安装状态。更新失败升级ConfigMgr数据库的一步。同样,我们没有看到错误0x87d20b15,但在这里我们看到升级ConfigMgr数据库失败.查看cmupdate.log了解详细信息。这就是有趣的地方。

ConfigMgr数据库升级错误0x87d20b15
ConfigMgr数据库升级错误0x87d20b15

你必须审阅cmupdate.log.cmupdate.log文件位于站点服务器的根驱动器(C:\ drive)下。我在CMUpdate.log中发现了两个错误

  • 应用更新更改0x87d20b15失败。
  • 数据库中保留了错误信息。
ConfigMgr数据库升级错误0x87d20b15
ConfigMgr数据库升级错误0x87d20b15

我还查看了configmgrpreeq .log,注意到一些错误和警告。

错误:连接SQL Server数据库失败
错误:连接SQL Server数据库失败
[SQL Server Native Client 11.0]在建立到SQL Server的连接时发生了与网络相关或特定于实例的错误。服务器未找到或无法访问。检查实例名称是否正确,以及SQL Server是否配置为允许远程连接。日志含义连接SQL Server失败,连接类型:SMS Master。Configuration Manager Prereq ERROR:连接SQL Server数据库失败。创建内存选项;警告;SQL索引创建内存没有配置为默认值0,可能会出错

让我介绍一下每个错误和警告以及相关的解决方案。

在建立与SQL Server的连接时,发生了与网络相关或特定于实例的错误。服务器未找到或无法访问

看到这个错误我有点惊讶,因为我在同一台服务器上运行ConfigMgr和SQL。因此,在建立到SQL服务器的连接时不可能看到错误。我可以连接到SQL Server没有任何问题,甚至访问ConfigMgr数据库。所以这不是问题所在。

检查实例名称是否正确,以及SQL Server是否配置为允许远程连接

这是一个奇怪的错误,但我也确保我的SQL Server配置为允许远程连接。您可以在SQL Server属性下验证此设置,并单击“连接”选项。

检查实例名称是否正确,以及SQL Server是否配置为允许远程连接
检查实例名称是否正确,以及SQL Server是否配置为允许远程连接

错误:连接SQL Server数据库失败

对于连接SQL Server数据库失败的错误,我建议检查NT AUTHORITY\SYSTEM在服务器上是否具有系统管理员权限。启动SQL Server Management studio并连接到数据库引擎。扩大安全>登录.右键单击NT AUTHORITY\SYSTEM account,然后单击属性.选择服务器角色并确保NT AUTHORITY\SYSTEM具有系统管理员权限。如果它已经在那里,你不必担心。

检查NT AUTHORITY\SYSTEM在服务器上是否具有系统管理员权限
检查NT AUTHORITY\SYSTEM在服务器上是否具有系统管理员权限

因此,在验证上述所有设置后,我仍然遇到ConfigMgr数据库升级错误0x87d20b15。我唯一能想到的就是我一开始忽视的那个警告。

SQL索引创建内存没有配置为默认值0,可能会出错

SQL索引创建内存没有配置为默认值0,可能会遇到问题,这是一个警告,记录在configmgrpreeq .log中。有时我们会忽略警告,因为它们通常不会停止更新安装,但这一次我很不幸。

当您为ConfigMgr安装SQL server时,我们所做的唯一配置是配置SQL server内存选项.如果你没有配置推荐的最小服务器内存和最大服务器内存,我们会在ConfigMgr设置过程中得到一个先决条件检查警告。

现在内存选项没有问题,问题是其他内存选项。我将索引创建内存设置为1024 KB,将每个查询的最小内存设置为2048 KB,这在很大程度上是我的错。因此,我想我得到了ConfigMgr数据库升级错误0x87d20b15。强烈建议不要更改的默认值索引创建内存(KB)高级设置

“索引创建内存”选项是一种高级配置设置,用于控制在创建索引期间可以最初分配给任务的最大内存量。

SQL索引创建内存没有配置为默认值0,可能会出错
SQL索引创建内存没有配置为默认值0,可能会出错

所以我决定将内存选项更改为默认值。我将Index Creation内存配置为0,将每个查询的最大内存配置为1024。更改后,设置立即生效。不需要重新启动SQL Server服务。

SQL Server索引创建内存
SQL Server索引创建内存

在纠正SQL索引内存选项后,我成功修复了ConfigMgr数据库升级错误0x87d20b15。我所要做的就是右键单击ConfigMgr更新,然后单击重试安装。这一次更新安装正确。

修正ConfigMgr数据库升级错误0x87d20b15
修正ConfigMgr数据库升级错误0x87d20b15