Warning fatal error 824 occurred

MSSQLSERVER_824 Область применения: SQL Server (все поддерживаемые версии) Сведения attribute Значение Название продукта SQL Server Идентификатор события 824 Источник события MSSQLSERVER Компонент SQLEngine Символическое имя B_HARDSSERR Текст сообщения SQL Server обнаружил логическую ошибку ввода-вывода, связанную с согласованностью: %ls. Она произошла при %S_MSG страницы %S_PGID в базе данных с идентификатором %d по смещению %#016I64x файла […]

Содержание

  1. MSSQLSERVER_824
  2. Сведения
  3. Симптом
  4. Причина
  5. Решение
  6. KB960770 — FIX: You receive error 605 and error 824 when you run a query that inserts data into a temporary table in SQL Server
  7. Symptoms
  8. Resolution
  9. Workaround
  10. Status
  11. More Information
  12. SQL Server 2008 R2 BPA information
  13. References
  14. References
  15. Исправление: Появляется сообщение об ошибке 605 и ошибку 824 при выполнении запроса, который вставляет данные во временную таблицу в SQL Server
  16. Проблемы
  17. Решение
  18. Обходное решение
  19. Статус
  20. Дополнительная информация
  21. Сведения о SQL Server 2008 R2 анализатора соответствия Рекомендациям
  22. Ссылки
  23. Ссылки

MSSQLSERVER_824

Область применения: SQL Server (все поддерживаемые версии)

Сведения

attribute Значение
Название продукта SQL Server
Идентификатор события 824
Источник события MSSQLSERVER
Компонент SQLEngine
Символическое имя B_HARDSSERR
Текст сообщения SQL Server обнаружил логическую ошибку ввода-вывода, связанную с согласованностью: %ls. Она произошла при %S_MSG страницы %S_PGID в базе данных с идентификатором %d по смещению %#016I64x файла «%ls». Дополнительные сведения см. в журнале ошибок SQL Server и журнале системных событий.

Симптом

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

Если запрос SELECT или DML выполняется с этим сообщением, в приложение возвращается сообщение об ошибке, а подключение к базе данных прерывается.

Причина

Эта ошибка говорит о следующем: Windows сообщает об успешном считывании страницы с диска, но SQL Server обнаружил некоторые повреждения страницы. Эта ошибка похожа на ошибку 823, за исключением того, что Windows не обнаружила ошибку. Ошибка 824 обычно указывает на проблемы в подсистеме ввода-вывода, такие как отказ дисков, проблемы встроенного ПО, неисправные драйверы устройств и т. д. Дополнительные сведения об ошибках ввода-вывода см. в главе 2 документации Майкрософт об основных операциях ввода-вывода в SQL Server.

SQL Server использует следующие API-интерфейсы Windows для выполнения операций ввода-вывода: ReadFile , WriteFile , ReadFileScatter и WriteFileGather . После завершения этих операций ввода-вывода SQL Server проверяет наличие ошибок, связанных с этими вызовами API. Если эти вызовы API завершаются ошибкой операционной системы, SQL Server сообщает об ошибке 823. Бывают ситуации, когда вызов API Windows фактически выполняется успешно, но данные, передаваемые операцией ввода-вывода, могли столкнуться с проблемой логической согласованности. Эти проблемы с логической согласованностью выводятся через ошибку 824.

В сообщении об ошибке 824 содержатся следующие сведения:

  • Файл базы данных, для которого была выполнена операция ввода-вывода.
  • Смещение в файле, где была предпринята попытка выполнить операцию ввода-вывода.
  • База данных, которой принадлежит этот файл.
  • Номер страницы, включенной в операцию ввода-вывода.
  • Была ли это операция чтения или записи.
  • Сведения о проверке логической согласованности, которая завершилась сбоем (тип проверки, фактическое значение и ожидаемое значение, используемое для этой проверки).

Эти проверки логической согласованности представляют собой проверки целостности, выполняемые SQL Server, чтобы гарантировать, что ключевые элементы данных, участвующих в передаче ввода-вывода, оставались неизменными на протяжении всей операции ввода-вывода. К таким проверкам относятся контрольная сумма, разорванная страница, короткая передача, идентификатор неправильной страницы, устаревшее чтение и сбой аудита страницы. Характер выполненных проверок зависит от различных параметров конфигурации на уровне базы данных и сервера.

Сообщение об ошибке 824 обычно указывает на то, что возникла проблема с базовой системой хранения, оборудованием или драйвером, который находится в пути запроса ввода-вывода. Эта ошибка может возникать, если в файловой системе возникли несоответствия или если файл базы данных поврежден.

Решение

При возникновении ошибки 824 можно попробовать следующие решения.

Просмотрите таблицу suspect_pages в , msdb чтобы проверить, возникает ли эта проблема на других страницах (в той же или в разных базах данных).

Проверьте согласованность баз данных, расположенных в том же томе (как в сообщении 824), с помощью команды DBCC CHECKDB. При обнаружении несоответствий в команде DBCC CHECKDB воспользуйтесь рекомендациями из статьи базы знаний Устранение ошибок согласованности баз данных, о чем сообщает DBCC CHECKDB.

Если в базе данных, в которой возникают эти ошибки 824, параметр базы данных не PAGE_VERIFY CHECKSUM включен, включите параметр немедленно. Ошибки 824 могут возникать по другим причинам, кроме ошибки контрольной суммы, но CHECKSUM обеспечивает наилучший вариант проверки согласованности страницы после ее записи на диск. Используйте этот скрипт для определения баз данных, в которых параметр CHECKSUM не включен:

Проверьте журналы событий Windows на наличие ошибок или сообщений от операционной системы, устройства хранения или драйвера устройства. Если они каким-то образом связаны с этой ошибкой, сначала следует устранить эти ошибки. Например, помимо сообщения 824, вы также можете заметить такое событие, как «Драйвер обнаружил ошибку контроллера в DeviceHarddisk4DR4», сообщаемое источником диска в журнале событий. В этом случае необходимо проверить наличие этого файла на устройстве, а затем сначала исправить ошибки диска.

Используйте служебную программу SQLIOSim, чтобы узнать, можно ли воспроизвести ошибки 824 за пределами обычных запросов ввода-вывода SQL Server. SQLIOSim поставляется с SQL Server 2008 (10.0.x) и более поздних версий, поэтому отдельная загрузка не требуется.

Обратитесь к поставщику оборудования или изготовителю устройства, чтобы убедиться, что:

  • Аппаратные устройства и конфигурация соответствуют требованиям ввода-вывода SQL Server.
  • драйверы устройств и другие программные компоненты, поддерживающие все устройства в пути ввода-вывода, обновлены.

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

Оцените наличие драйверов фильтров в пути ввода-вывода этих запросов. Чтобы получить список всех драйверов фильтров в системе, можно выполнить следующие команды:

  • Исключить файлы базы данных и журналов из проверки с помощью таких драйверов фильтров. Дополнительные сведения см. в разделе Каталоги и расширения имен файлов для исключения из проверки на вирусы.
  • Проверьте наличие обновлений для этих драйверов фильтра.
  • Можно ли удалить или отключить эти драйверы фильтров, чтобы увидеть, исчезнет ли проблема, которая приводит к ошибке 824?

Если вы используете виртуальную машину, убедитесь, что все драйверы виртуализации обновлены, или обратитесь к поставщику виртуализации для получения дополнительных сведений.

Если проблема не связана с оборудованием и доступна известная чистая резервная копия, восстановите базу данных из резервной копии.

Источник

KB960770 — FIX: You receive error 605 and error 824 when you run a query that inserts data into a temporary table in SQL Server

Bug: #50003826 (SQL Hotfix)

Microsoft distributes Microsoft SQL Server 2008 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release.

Symptoms

In SQL Server 2008, you run a query that inserts data into a temporary table. The insert statement contains a subquery that references the same temporary table. When you run the query, you may receive an error message that resembles the following:

Msg 605, Level 21, State 3, Line 1

Attempt to fetch logical page (1:225) in database 2 failed. It belongs to allocation unit 281474980315136 not to 504403158513025024.

If you run the query again, you receive an error message that resembles the following:

Msg 824, Level 24, State 2, Line 1

SQL Server detected a logical consistency-based I/O error: incorrect checksum (expected: 0x50758180; actual: 0x15658bfc). It occurred during a read of page (1:336) in database ID 2 at offset 0x000000002a0000 in file ‘C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008MSSQLDATAtempdb.mdf’. Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.

In some cases, you may also receive an error message that resembles the following:

Msg 601, Level 12, State 3, Procedure p rocedure name, Line line number
Could not continue scan with NOLOCK due to data movement.

A possible query construct that can produce these errors is as follows:

Resolution

The fix for this issue was first released in Cumulative Update 3. For more information about how to obtain this cumulative update package for SQL Server 2008, click the following article number to view the article in the Microsoft Knowledge Base:

960484 Cumulative update package 3 for SQL Server 2008Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

956909 The SQL Server 2008 builds that were released after SQL Server 2008 was releasedAfter you install this cumulative update package, you have to enable trace flag 4135. To do this, you can add the -T4135 startup parameter. Or, you can use the dbcc traceon(4135) statement for a specific session.

Workaround

To work around this issue, add a column that has both a clustered primary key and an identity property to the temporary table. For example, run the following statement to change the temporary table:

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the «Applies to» section.

More Information

Although you encounter error message 824 or 605, the database does not become corrupted. Also, these error messages reference pages from the tempdb database.

For more information about what files are changed, and for information about any prerequisites to apply the cumulative update package that contains the hotfix that is described in this Microsoft Knowledge Base article, click the following article number to view the article in the Microsoft Knowledge Base:

960484 Cumulative update package 3 for SQL Server 2008

SQL Server 2008 R2 BPA information

The SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA) provides a rule to detect situations in which you do not have the cumulative update or the trace flag enabled to address this issue. The SQL Server 2008 R2 BPA supports both SQL Server 2008 and SQL Server 2008 R2.

If you run the BPA tool and encounter a «Database Engine — tempdb errors fix or trace flag missing» warning, you have to check the version of SQL Server and the trace flags that are configured to enable this fix.

References

SQL Server 2008 R2 BPA Rule

tempdb errors fix or trace flag missing

Note You can enable trace flag 4135 or trace flag 4199 to enable this fix. Trace flag 4135 was introduced in Cumulative Update package 3 for SQL Server 2008. Trace flag 4135 is also available in SQL Server 2008 Service Pack 1, in SQL Server 2008 Service Pack 2, and in SQL Server 2008 R2. Trace flag 4199 was introduced in Cumulative Update package 7 for SQL Server 2008, in Cumulative Update package 7 for SQL Server 2008 Service Pack 1, and in Cumulative Update package 1 for SQL Server 2008 R2. For more information about trace flag 4199, click the following article number to view the article in the Microsoft Knowledge Base:

974006 Trace flag 4199 is added to control multiple query optimizer changes previously made under multiple trace flags Because the fix for this problem involves a combination of a specific hotfix build and a trace flag to enable the fix, we are including the following table to show the different scenarios and the recommended action for you to take for each scenario.

For more information about the latest SQL Server builds, click the following article number to view the article in the Microsoft Knowledge Base:

957826 Where to find information about the latest SQL Server builds

References

For more information about the list of builds that are available after the release of SQL Server 2008, click the following article number to view the article in the Microsoft Knowledge Base:

956909 The SQL Server 2008 builds that were released after SQL Server 2008 was released

For more information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:

935897 An Incremental Servicing Model is available from the SQL Server team to deliver hotfixes for reported problems

For more information about the naming schema for SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:

822499New naming schema for Microsoft SQL Server software update packagesFor more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Источник

Исправление: Появляется сообщение об ошибке 605 и ошибку 824 при выполнении запроса, который вставляет данные во временную таблицу в SQL Server

Ошибка: #50003826 (исправление SQL)

Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 как один загружаемый файл. Так как исправления являются накопительными, каждый выпуск содержит все исправления и все исправления безопасности, которые были включены в предыдущие 2008 SQL Server исправления выпуска.

Проблемы

В SQL Server 2008 выполнение запроса, который вставляет данные во временную таблицу. Инструкция insert содержит вложенный запрос, который ссылается на одну и ту же временную таблицу. При выполнении запроса появляется сообщение об ошибке, подобное приведенному ниже:

Ошибка msg 605, 21 уровень состояние 3, строка 1Attempt для выборки логической страницы (1:225) в базе данных 2. Он принадлежит к 281474980315136 единицы размещения не для 504403158513025024.

При выполнении запроса, появляется сообщение об ошибке, подобное приведенному ниже:

Сообщение 824, уровень 24, состояние 2, строка 1

SQL Server обнаружил логическую ошибку ввода-вывода на основе соответствия: Неверная контрольная сумма (ожидается: 0x50758180; фактическая: 0x15658bfc). Она произошла во время чтения страницы (1:336) в базе данных ID 2 по смещению 0x000000002a0000 в файле «C:Program создаваемую SQL ServerMSSQL10. SQL2008MSSQLDATAtempdb.mdf «. Дополнительные сообщения в журнале событий системы или журнал ошибок SQL Server может предоставить более подробные сведения. Это серьезная ошибка, которую может нарушить целостность базы данных и должны быть исправлены немедленно. Выполните проверку согласованности базы данных (DBCC CHECKDB). Эта ошибка может быть вызвана многими причинами. Дополнительные сведения содержатся в разделе электронной документации по SQL Server.

В некоторых случаях может также появиться сообщение об ошибке, подобное приведенному ниже:

Msg 601, уровень 12, состояние 3, процедура p rocedure имя, номер строкине удалось продолжить просмотр с NOLOCK вследствие перемещения данных.

Запрос конструкцию, которая может приводить к этим ошибкам выглядит следующим образом:

Решение

Исправление этой уязвимости первого выпуска накопительного обновления 3. Дополнительные сведения о том, как получить этот накопительный пакет обновления для SQL Server 2008, щелкните следующий номер статьи базы знаний Майкрософт:

960484 Накопительный пакет обновления 3 для SQL Server 2008Примечание. Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и все исправления, входившие в состав предыдущих SQL Server 2008 выпуска исправлений. Мы рекомендуем рассмотреть применение последнего выпуска исправления, содержащего это исправление. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:

956909 SQL Server 2008 выполняет построение, выпущенных после выпуска SQL Server 2008После установки этот накопительный пакет обновления, необходимо включить флаг трассировки 4135. Чтобы сделать это, можно добавить -T4135 параметра запуска. Или можно использовать инструкцию dbcc traceon(4135) для конкретного сеанса.

Обходное решение

Чтобы обойти эту проблему, добавьте столбец с кластеризованного первичного ключа и свойство identity во временной таблице. Например выполните следующую инструкцию, чтобы изменить временной таблицы:

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе «Применяется к».

Дополнительная информация

Несмотря на то, что возникнет сообщение об ошибке 824 или 605 базы данных не поврежден. Кроме того эти сообщения об ошибках ссылаются на страницы в базе данных tempdb.Дополнительные сведения о том, какие файлы изменяются, а для получения сведений о компонентах, необходимых для применения в накопительный пакет обновления, содержащий исправление, описанное в статье базы знаний Майкрософт, щелкните следующий номер статьи для просмотра Статья базы знаний Майкрософт:

960484 Накопительный пакет обновления 3 для SQL Server 2008

Сведения о SQL Server 2008 R2 анализатора соответствия Рекомендациям

SQL Server 2008 R2 анализатор соответствия рекомендациям (SQL Server 2008 R2 BPA) предоставляет правила для определения ситуаций, в которых нет накопительного обновления или флаг трассировки включен для решения этой проблемы. SQL Server 2008 R2 BPA поддерживает SQL Server 2008 и SQL Server 2008 R2. Если запустить средство анализатора соответствия Рекомендациям и встретиться «СУБД — tempdb исправить ошибки или отсутствует флаг трассировки» предупреждение, необходимо проверить версию SQL Server и флаги трассировки, которые настроены для активации этого исправления.

Ссылки

Правило SQL Server 2008 R2 анализатора соответствия Рекомендациям

исправить ошибки базы данных tempdb или отсутствует флаг трассировки

Примечание. Можно включить флаг трассировки 4135 или флаг трассировки 4199 Включение данного исправления. Флаг трассировки 4135 был представлен в накопительный пакет обновления 3 для SQL Server 2008. Флаг трассировки 4135 доступен также в Пакет обновления 1 для SQL Server 2008, Пакет обновления 2 для SQL Server 2008 и SQL Server 2008 R2. Флаг трассировки 4199 был введен в накопительный пакет обновления 7 для SQL Server 2008, накопительный пакет обновления 7 для SQL Server 2008 Пакет обновления 1 и накопительный пакет обновления 1 для SQL Server 2008 R2. Дополнительные сведения о флаге трассировки 4199 щелкните следующий номер статьи базы знаний Майкрософт:

974006 Флаг трассировки 4199 добавляется к элементу управления, несколько изменений оптимизатор запросов, сделанных в группе несколько флагов трассировки Так как исправление для этой проблемы включает в себя сочетание построения исправления и флага трассировки, чтобы активировать его, предоставляются вместе в следующей таблице показаны различные сценарии и рекомендуемые действия для выполнения для каждого сценария. Дополнительные сведения о последней версии сборок SQL Server щелкните следующий номер статьи базы знаний Майкрософт:

957826 Где найти сведения о последней версии SQL Server формирует

Ссылки

Дополнительные сведения о списке сборок, доступных после выпуска SQL Server 2008 щелкните следующий номер статьи базы знаний Майкрософт:

956909 SQL Server 2008 выполняет построение, выпущенных после выпуска SQL Server 2008Дополнительные сведения о добавочных модель обслуживания для SQL Server щелкните следующий номер статьи базы знаний Майкрософт:

935897 Модель обслуживания изменений, используемая рабочей группой SQL Server, предоставляет модель ISM для распространения исправлений обнаруженных проблемДополнительные сведения о схеме именования для обновления SQL Server щелкните следующий номер статьи базы знаний Майкрософт:

822499Новая схема присвоения имен пакетам обновлений программного обеспечения Microsoft SQL ServerДля получения дополнительных сведений о терминологии обновлений программного обеспечения щелкните следующий номер статьи базы знаний Майкрософт:

824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Источник

Серер intel S5520UR + Intel (R) RAID Controller RS2BL080 + MS Win Server 2008 R2 Enterprise + Microsoft SQL Server 2008 R2

восемь дисков объеденены в 2 массива RAID-10 (на первом система и ПО, на втором базы)

MS SQL крутит базы для 1С

Вечером возникла ошибка 824, 1С сообщила, что нет доступа к базе, в итоге база «накрылась» и восстановить полностью не удалось (восстановили из backup за прошлый день).

У программистов 1С возникли подозрения, что ошибка связана с дисками, что это ошибка диска, но проверка на бэд-блоки показала, что все в порядке, в системном журнале нет ни намека на ошику в ОС, драйвере, железе, только ошибки SQL. Администратора баз у нас
как такогого нет, я же только железом занимаюсь, и сетью, в SQL не лезу и сильно не разбираюсь.

Хотелось бы понять , как то докапаться до сути ошибки, что бы этого не допустить в будущем. Если ошибка в железе, то нужно с этим чтото сделать, если ошибка возникла в результате сбоя MS SQL или 1С, то это тоже нужно как-то решать.

Сама ошибка такая:

SQL Server обнаружил логическую ошибку ввода-вывода, связанную с согласованностью: неверный идентификатор страницы (ожидаемый 1:4545818; фактический 0:511882718). Она произошла при прочитать страницы (1:4545818) в базе данных с идентификатором 13 по смещению
0x000008aba34000 файла «D:Базы 8.2pt_upp_newpt_upp_new.mdf». Дополнительные сведения см. в журнале ошибок SQL Server и журнале системных событий. Это серьезная ошибка, которая угрожает целостности базы данных и должна быть немедленно исправлена. Выполните
полную проверку базы данных на согласованность (DBCC CHECKDB). Эта ошибка может быть вызвана многими причинами; дополнительные сведения см. в электронной документации по SQL Server.

  • Изменено

    19 октября 2012 г. 4:18

  • Перемещено
    Abolmasov Dmitry
    19 октября 2012 г. 9:39
    (От:Работа с данными)

Hi All,

Thank you for spending time reviewing this issue.

To put it simply, in the second-stage recycle bin of one SharePoint 2010 site, there are hundreds of items that cannot be deleted by either using interface or powershell. The error messages returned on Interface and recorded in ULS logs are same.. The items
in Recyle Bin can be restored to original location, and can be deleted to second-stage recycle bin again, but can never be deleted from Recycle Bin.. According to the log entries, I think it’s SQL Server related, and as you know, Microsoft doesn’t allow the
users to query SharePoint databases or their official support will be stopped… So it’s frustrating when you wanna dig deeper into it.

Here’s the error message from ULS log for your reference.

System.Data.SqlClient.SqlException: Warning: Fatal error 824 occurred at Feb 19 2014 10:19AM. Note the error and time, and contact your system administrator.     at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)     at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)     at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)     at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean return…
…Stream, Boolean async)     at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)     at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult
result, String methodName, Boolean sendToPipe)     at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()     at Microsoft.SharePoint.Utilities.SqlSession.ExecuteNonQuery(SqlCommand command)
   at Microsoft.SharePoint.SPRecycleBinUtility.DeleteHelper(SPSite site, SPWeb web, Guid[] ids, Int32 startIndex, Int32 endIndex, Boolean ignoreNotFound, Int32& returnValue, Guid& failedItem)     at Microsoft.SharePoint.SPRecycleBinUtility.DeleteMultiple(SPSite
site, SPWeb web, Guid[] ids, Boolean ignoreNotFound, Int32& returnValue, Guid& failedItem)     at Microsoft.SharePoint.SPRecycleBinUtility.FreeSecondStageQuota(SPSite site, Int64 quota)     at Microsoft.SharePoint.SPRecycleBinUtility.MoveToSecondStage(SPSite
site, SPWeb web, Guid id)     at Microsoft.SharePoint.SPRecycleBinItemCollection.MoveToSecondStage(Guid[] ids, Boolean deleteIfTooBig)     at Microsoft.SharePoint.ApplicationPages.RecycleBinPage.ProcessAction(String action, String guidString)
    at Microsoft.SharePoint.Applicat…
…ionPages.RecycleBinPage.OnLoad(EventArgs e)     at System.Web.UI.Control.LoadRecursive()     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)     at System.Web.UI.Page.ProcessRequest(Boolean
includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)     at System.Web.UI.Page.ProcessRequest()     at System.Web.UI.Page.ProcessRequest(HttpContext context)     at ASP._layouts_recyclebin_aspx.ProcessRequest(HttpContext
context)     at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()     at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)    
at System.Web.HttpApplication.PipelineStepManager.ResumeSteps(Exception error) …
…    at System.Web.HttpApplication.BeginProcessRequestNotification(HttpContext context, AsyncCallback cb)     at System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr
managedHttpContext, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr managedHttpContext, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)    
at System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr managedHttpContext, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)     at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr managedHttpContext,
IntPtr na…
…tiveRequestContext, IntPtr moduleData, Int32 flags)  

Your any suggestion is appreciated! I am looking forward to hear your thoughts.

Thanks,
Dar

Home » SQL » SQL Server Error 824 – Troubleshooting Guide

SQL Server Error 824 – Troubleshooting Guide

Brief Overview

SQL server is a highly popular database management system and despite being efficient in its functioning makes the user encounter some errors during its usage. One such error is the SQL Server Error 824 which takes place due to logical consistency and is a fatal error.

SQL server database 824 error means that the page has been read successfully from the disk but there is some issue with the page. Other types of messages that might be shown are “fatal error 824 occurred” , “SQL server detected logical consistency based i/o error”. The exact display message can be more helpful in understanding this problem.

SQL Server Error 824 – Display Message

You may be shown the following error message when SQL server logical consistency error occurs in the database.

The problem of fatal error or logical consistency based i/o error occurred during a read of page (2:53686) in database ID 33 at offset 0x0000001554c000 in file.
‘E:MSSQL.SQL2010MSSQLDATAabc_d.mdf’
2017-09-10 01:30:12.80 spid50
Error: 824, Severity: 24, State: 2.
2017-09-10 01:30:12.80 spid50
SQL Server detected Logical Consistency-Based I/O error: incorrect page-id (expected 1:43601; actual 0:0)

Quick Solution: For recovering from fatal error 824 easily and for continuing usage of database services seamlessly use an automated software such as SQL Database Repair Tool

Possible Causes for SQL Server Error 824

SQL server error message 824 is displayed while using SQL Server due to several reasons which are given as follows

  • Insufficient storage space on disk can cause error code 824
  • Hardware device or driver software which acts as a medium may cause errors
  • File system inconsistency can also be reason for SQL server logical consistency error
  • Damage caused to the database files may be a prime cause for the problem as well
  • Corruption of the file system can also give rise to SQL fatal error 824

SQL server database 824 error may cause damage to the integrity of the database. Thus it is wise to perform consistency check of the entire database using inbuilt utility or repair file corruption through automated software.

Workarounds to Resolve SQL Server Error 824 Manually

There are some manual techniques which can help to troubleshoot fatal error 824. Follow the different inbuilt methods given below

Tip #1:  Carefully examine the suspect_pages table present in the database and find out if other pages are facing the same problem

Tip #2:  Check the state of consistency of the SQL server database which is present in the same volume. You can do this using the DBCC CHECKDB command.

Tip #3:  Turn on the PAGE_VERIFY CHECKSUM database option if it is not already activated

Tip #4:  Find out if any error has occurred through the OS, storage devices, or device drivers by checking the Windows event logs. Correct the errors, if any.

Tip #5:  SQLIOSim method can also be useful in finding out the status of SQL server database 824 error

If you don’t have backup created before attempting to resolve SQL server error 824, follow the steps given below instead

  1.  Stop all SQL Services
  2.  Copy and Save the corrupted SQL Server database at a new memory location
  3. Start all the SQL Services
  4.  Create a blank SQL database having the same name
  5. Separate your blank database from the original database.
  6. Run the query given below after performing the above-mentioned steps

EXEC sp_resetstatus ‘db_name’ ;
ALTER DATABASE db_name SET EMERGENCY
DBCC CHECKDB(‘db_name‘)
ALTER DATABASE db_name SET SINGLE_USER Mode
With ROLLBACK IMMEDIATE DBCC CHECKDB (‘db_name’ , REPAIR_ALLOW_ DATA_LOSS)
ALTER DATABASE ‘db_name’ SET MULTI_USER

Problems with Manual Workarounds

  • They are complex to follow and implement by users having limited technical expertise
  • A large amounts of time is required to be spent to properly resolve SQL fatal error 824
  • There is a risk of permanent database damage and if steps are not followed carefully.
Conclusion

The error 824 in SQL server can cause several problems to DBAs and to solve it is a major concern. Manual techniques are available but they can cause further troubles during usage. So to restore database to a normal state & to get rid of SQL server error 824, use an automated software solution.


  • Im using sql2005 and in a simple query in the mngt studio return the error:

    Msg 21, Level 24, State 1, Line 1

    Warning: Fatal error 824 occurred at May 16 2007 11:07AM. Note the error and time, and contact your system administrator.

    Someone know what is this error and how to fix it ?

    Thanks

  • Grant Fritchey

    SSC Guru

    Points: 398119

    You got trouble in River City. According to MS:

    The 824 error indicates that a logical consistency error was detected during a read. A logical consistency error is a clear indication of actual damage and frequently indicates data corruption caused by a faulty I/O subsystem component.

    Time to get kicking with DBCC. I hope you’ve been testing your backups on a regular basis.

  • Camilo Torres

    SSCrazy

    Points: 2034

    I have seen it before.

    Right click on My Computer icon, select manage, Open the Event Viewer Tree, Select Application and check there for the time of the error to see what happened to your system. If nothing there then do the same on the SQL Server Machine is connected remotely.

  • mobile

    SSC Enthusiast

    Points: 107

    November 18, 2008 at 10:45 am

    #900078

    — hacer new query en master.

    — alter database dbname set emergency

    — ALTER DATABASE DBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE

    — dbcc checkdb (‘dbname’, repair_allow_data_loss)

    — alter database dbname set multi_user

    saludos

  • noeld

    SSC Guru

    Points: 96590

    November 18, 2008 at 2:46 pm

    #900185

    mobile (11/18/2008)


    — hacer new query en master.

    — alter database dbname set emergency

    — ALTER DATABASE DBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE

    — dbcc checkdb (‘dbname’, repair_allow_data_loss)

    — alter database dbname set multi_user

    saludos

    If you decide to repair_ALLOW_DATA_LOSS be warned that you may not like the results.

    My advice is to check first if the problem is in NC indexes pages which you can drop/recreate

    If that is not the case you should try to use backups to get the data back.

    If you just don’t care about the data then doing as posted above may be OK.

    In any instance check your hardware !!!

    * Noel

  • Gail Shaw

    SSC Guru

    Points: 1004494

    November 18, 2008 at 7:12 pm

    #900251

    mobile (11/18/2008)


    — hacer new query en master.

    — alter database dbname set emergency

    — ALTER DATABASE DBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE

    — dbcc checkdb (‘dbname’, repair_allow_data_loss)

    — alter database dbname set multi_user

    saludos

    Repair should NOT be a first thing tried. As the name implies, it looses data. Not maybe. Not perhaps. It will cause data loss.

    Please run the following and post the results

    DBCC CHECKDB(< Database name > ) WITH NO_INFOMSGS

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass

  • pamarant

    Old Hand

    Points: 324

    Find out what is causing the error, then do a dbcc checktable, odds are an index is out of whack, rebuild indexes on that table.

  • Gail Shaw

    SSC Guru

    Points: 1004494

    Considering that this thread is almost 3 years old, I’m guessing the OP has come right somehow.

    Rebuilding indexes is not a way to fix corruption. It might (read might) make the problem disappear, but that’s because rebuilding an index deallocates pages. If the damaged page is deallocated, the error appears to go away, but it wasn’t fixed.

    Take a look at this article. http://www.sqlservercentral.com/articles/65804/

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass

  • Saravanan T

    SSCrazy

    Points: 2506

    Nice article Gail.Thks.

    Regards,
    Saravanan

  • sergio hi

    Right there with Babe

    Points: 726

    Thank you very much to all for your contribution.

    During these years, the server has been changed and the sql server has been migrated to 2008.

  • debbe1

    SSC Journeyman

    Points: 81

    Found this thread and link to Gail’s article today during my search for answers to address a «Fatal Error 824». Waiting on the db check to complete so I know what direction to go next.

  • Gail Shaw

    SSC Guru

    Points: 1004494

    If you need specific advice, please start a new thread in the appropriate forum (based on SQL version) and post the output of the CheckDB.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass

Viewing 12 posts — 1 through 11 (of 11 total)

Понравилась статья? Поделить с друзьями:
  • Wasteland 2 как изменить разрешение
  • Warning failed to get wu exemption info from nlm assuming not exempt error 0x80240037
  • Warning failed to get wu exemption info from nlm assuming not exempt error 0x80070032
  • Warning error while sending query packet pid
  • Warning error monitor что это