不一致 VMM 数据库规则

Microsoft.SystemCenter.VirtualMachineManager.2008.Engine.DBInconsistent.rule (Rule)

Knowledge Base article:

概述

可能由于硬件问题,Virtual Machine Manager 使用的某个数据库进入了不一致的状态或已损坏(VMM 错误 2602),或者由于数据库处于不一致的状态,VMM 无法连接到该数据库(VMM 错误 2603)。

原因

常见原因包括:

Virtual Machine Manager 使用的某个数据库进入了不一致的状态或已损坏,或者硬件问题使数据库变得不可访问。(VMM 错误 2602)

由于 VMM 数据库处于不一致的状态,Virtual Machine Manager 无法连接到该数据库(VMM 错误 2603):

  • 某人手动更改了数据库,Virtual Machine Manager 不再认为该数据库处于一致状态。

  • VMM 应用程序中可能出现了 bug。

解决方案

出现上述任一错误时,请咨询有经验的 SQL Server 数据库管理员。

解决不一致或损坏的数据库问题(VMM 错误 2602):

1

查看 Windows 事件日志,以找到此错误的详细信息。

2

运行 DBCC CHECKDB,以确定损坏的范围。

3

如果问题仅出现在缓存中,而未出现在磁盘本身,则可以通过重新启动 SQL Server 来更正问题。

4

否则,请使用 DBCC 来更正此问题。

5

在某些情况下,您可能需要还原 VMM 数据库。

由于数据库处于不一致的状态,VMM 无法连接到该数据库(VMM 错误 2603):

1

立即咨询您的 SQL Server 数据库管理员。可能需要还原 VMM 数据库。

2

如果问题仍然存在,请与客户服务和支持 (CSS) 联系。有关 CSS 联系信息和其他辅助支持选项,请访问 Microsoft 帮助和支持(网址为:http://go.microsoft.com/fwlink/?LinkId=118664,该网页可能为英文)。

Additional

Windows NT 事件 2602、2603

External

VMM TechCenter(网址为:http://go.microsoft.com/fwlink/?LinkId=85920,该网页可能为英文)

Element properties:

TargetMicrosoft.SystemCenter.VirtualMachineManager.2008.Engine
CategoryAvailabilityHealth
EnabledTrue
Event SourceVirtual Machine Manager
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
VMM 数据库处于不一致状态
{0}
Event LogVM Manager

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.VirtualMachineManager.2008.Engine.DBInconsistent.rule" Enabled="true" Target="Microsoft.SystemCenter.VirtualMachineManager.2008.Engine">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>VM Manager</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>Virtual Machine Manager</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(2602|2603)$</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.VirtualMachineManager.2008.Engine.DBInconsistent_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>