На странице уровня сбалансированного дерева содержится запись и значение ключа для каждой дочерней страницы. Если дочерняя страница является страницей конечного уровня, то во всех записях на этой странице значения ключа должны быть не меньше значений ключа на родительской странице. Если дочерняя страница является страницей уровня дерева, то значения ключа во всех записях должны превышать значение ключа в родительском объекте, за исключением первой записи, в которой значение ключа должно совпадать со значением ключа родительского объекта.
Для родительской страницы P_ID2 с дочерними страницами P_ID1 и P_ID3 все значения ключа на странице P_ID1 должны быть меньше значения ключа, сохраненного для страницы P_ID3 на родительской странице.
В этом случае самое большое значение ключа на странице P_ID1 (т. е. ключа последней записи на данной странице) не меньше значения ключа для P_ID3, которое хранится на родительской странице P_ID2.
Для этого сообщения возможны три состояния (1, 2 и 3), и все они означают одно и то же. Они различаются только участком кода, в котором обнаружена данная проблема.
СБОЙ ОБОРУДОВАНИЯ
Выполните диагностику оборудования и устраните все найденные проблемы. Также просмотрите системный журнал и журнал приложений Microsoft® Windows NT®, а также журнал ошибок SQL Server™, чтобы узнать, не является ли эта ошибка результатом сбоя оборудования. Устраните все неполадки оборудования.
Если постоянно возникают проблемы с повреждением данных, попробуйте поменять местами некоторые компоненты оборудования, чтобы локализовать проблему. Убедитесь, что в данной системе на контроллере диска не включено кэширование записи. Если есть основания полагать, что это может быть источником неполадки, обратитесь к поставщику оборудования.
Наконец, может оказаться полезным переключение на совершенно новую аппаратную систему, включая переформатирование жестких дисков и переустановку операционной системы.
ВОССТАНОВЛЕНИЕ ИЗ РЕЗЕРВНОЙ КОПИИ
Если неполадка не связана с оборудованием и есть безошибочная резервная копия, восстановите базу данных из этой копии.
DBCC CHECKDB
Если безошибочная резервная копия недоступна, выполните инструкцию DBCC CHECKDB без предложений восстановления, чтобы определить область повреждения. DBCC CHECKDB выработает рекомендацию по использованию предложения восстановления. Затем выполните инструкцию DBCC CHECKDB с соответствующим предложением восстановления, чтобы устранить повреждение.
ПРЕДУПРЕЖДЕНИЕ: Если вы не уверены, к какому результату может привести выполнение команды DBCC CHECKDB с инструкцией восстановления для данных, свяжитесь с непосредственным поставщиком услуг поддержки перед выполнением инструкции.
При восстановлении индекс создается заново. Если выполнение инструкции DBCC CHECKDB с одним из предложений восстановления не устраняет неполадку, обратитесь к основному поставщику услуг технической поддержки.
Имя | Описание | Значение по умолчанию |
Вкл. | Включает или отключает рабочий процесс. | Да |
Приоритет | Определяет приоритет предупреждения. | 1 |
Серьезность | Определяет серьезность предупреждения. | 1 |
Target | Microsoft.SQLServer.2012.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 8934 | ||
Event Source | $Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application | ||
Comment | Mom2012ID='{A9F28860-B9F8-40C9-9367-47E50A7EA1E3}';MOM2012GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.Windows.EventProvider | Microsoft.SQLServer.SQLDefaultAccount |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.2012.Table_error__The_high_key_value_on_page_is_not_less_than_the_low_key_value_in_the_parent_slot_of_the_next_page_1_5_Rule" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2012ID='{A9F28860-B9F8-40C9-9367-47E50A7EA1E3}';MOM2012GroupID={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>8934</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.2012.Table_error__The_high_key_value_on_page_is_not_less_than_the_low_key_value_in_the_parent_slot_of_the_next_page_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>