MSSQL 2014: ошибка при распределении памяти для Common Language Runtime (CLR)

Microsoft.SQLServer.2014.Failed_to_allocate_memory_for_Common_Language_Runtime__CLR__5_Rule (Rule)

Правило срабатывает, когда SQL Server не может распределить память для CLR.

Knowledge Base article:

Сводка

Эта ошибка может произойти, когда запускается SQL Server. Во время процедуры запуска, SQL Server требуется несколько килобайт памяти для запуска Common Language Runtime. Если эта память не доступна, то SQL Server не сможет запуститься.

Причины

Эта ошибка возникает, если недостаточно памяти для запуска среды CLR.

Решения

Во-первых, попробуйте перезагрузить сервер. Если SQL Server не запускается, проверьте системный журнал и журнал приложений Windows для выявления ошибок, связанных с перегрузкой системы или нехваткой памяти. Убедитесь, что с оборудованием нет проблем. Увеличьте количество доступной памяти. Перезагрузите компьютер и попробуйте запустить SQL Server снова. Если проблема не устранена, обратитесь к поставщику продукта.

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

Название

Описание

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

Включено

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

Да

Приоритет

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

1

Серьезность

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

2

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID6289
Event Source$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2014: ошибка при распределении памяти для Common Language Runtime (CLR)
{0}
Event LogApplication
CommentMom2014ID='{60AA6DE5-6CAA-4E24-B038-972C9ED6AC6A}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.2014.Failed_to_allocate_memory_for_Common_Language_Runtime__CLR__5_Rule" Target="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2014ID='{60AA6DE5-6CAA-4E24-B038-972C9ED6AC6A}';MOM2014GroupID={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">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>6289</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</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.2014.Failed_to_allocate_memory_for_Common_Language_Runtime__CLR__5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>