XML. Не удалось создать экземпляр класса. Проверьте наличие файла Msxml2.dll в установке SQL Server.

Microsoft.SQLServer.2008.XML___Failed_to_instantiate_class._Make_sure_Msxml2.dll_exists_in_the_SQL_Server_installation_1_5_Rule (Rule)

Knowledge Base article:

Сводка

Файл Msxml2.dll отсутствует на компьютере, на котором установлен SQL Server, или его не удалось загрузить из системного каталога при обработке такого свойства XML, как sp_xml_preparedocument. Если файл существует, то, возможно, он неправильно зарегистрирован или одна из его зависимостей не существует.

Если MSDE SP3a был установлен на компьютер, не имеющий более ранней версии MSDE, файл Msxml2.dll может отсутствовать. Для получения более подробной информации см. статью базы знаний Майкрософт 823490. Если у вас другой выпуск SQL Server, то файл может быть удален при отмене установки программы или вручную либо может быть не зарегистрирован.

Решения

Выполните поиск файла Msxml2.dll на компьютере SQL Server. Если файл не найден, скачайте и установите файл Msxml2.msi из статьи базы знаний Майкрософт 823490. Если файл существует, убедитесь, что он правильно зарегистрирован.

Переопределяемые параметры

Название

Описание

Значение по умолчанию

Включено

Включает или отключает рабочий процесс.

Да

Приоритет

Определяет приоритет предупреждения.

1

Важность

Определяет серьезность предупреждения.

2

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID6608
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
XML. Не удалось создать экземпляр класса. Проверьте наличие файла Msxml2.dll в установке SQL Server.
{0}
Event LogApplication
CommentMom2008ID='{4C0A552D-FD2B-4E11-AE2F-4C02A27CDFE5}';MOM2008GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Microsoft.SQLServer.SQLDefaultAccount
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2008.XML___Failed_to_instantiate_class._Make_sure_Msxml2.dll_exists_in_the_SQL_Server_installation_1_5_Rule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2008ID='{4C0A552D-FD2B-4E11-AE2F-4C02A27CDFE5}';MOM2008GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>6608</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.XML___Failed_to_instantiate_class._Make_sure_Msxml2.dll_exists_in_the_SQL_Server_installation_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>