Логическая страница в базе данных уже хэширована

Microsoft.SQLServer.2008.Logical_page_in_database_is_already_hashed_1_5_Rule (Rule)

Knowledge Base article:

Сводка

Эта ошибка возникает, когда Microsoft® SQL Server™ пытается хэшировать логическую страницу %S_PGID базы данных ID%d, а данная страница уже находится в хэш-таблице SQL Server.

Эта ошибка обычно возникает как побочный эффект других ошибок данных, которые могут быть обнаружены при выполнении инструкции DBCC CHECKDB без предложений восстановления.

Решения

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

Внимание! Если выполнение инструкции DBCC CHECKDB с одним из предложений восстановления не устраняет проблему с индексом или если есть сомнения в том, какое действие инструкция DBCC CHECKDB с предложением восстановления окажет на данные, обратитесь к своему основному поставщику услуг технической поддержки.

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

Если DBCC CHECKDB не находит ошибок или если ошибки обнаружены и исправлены и последующие инструкции DBCC не сообщают об ошибках, но данная ошибка возникает повторно, обратитесь к основному поставщику услуг технической поддержки. Обеспечьте доступность журналов ошибок SQL Server и выходных данных инструкции DBCC CHECKDB и процедуры sp_configure для анализа.

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

Имя

Описание

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

Вкл.

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

Да

Приоритет

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

1

Серьезность

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

1

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID813
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Логическая страница в базе данных уже хэширована
{0}
Event LogApplication
CommentMom2008ID='{1DEC4754-8DE3-475E-AE58-EE2760B8F1C5}';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.Logical_page_in_database_is_already_hashed_1_5_Rule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2008ID='{1DEC4754-8DE3-475E-AE58-EE2760B8F1C5}';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>813</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.Logical_page_in_database_is_already_hashed_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>