Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

MSSQL-ERR-21 1С:Предприятие и СУБД

MSSQL Ошибка 21: Fatal error occurred (Критический сбой ядра СУБД / Памяти)

Обновлено: 21.08.2026 · Официальная документация ↗

Архитектура обработки фатальных сбоев (Severity 21) в Microsoft SQL Server

Сообщения об ошибках с уровнем серьезности Severity 21 (Fatal Error in Database Processes) указывают на критический сбой внутри ядра СУБД (SQLOS), при котором изолированный системный процесс (SPID) или поток выполнения встретил невосстановимое повреждение структур данных. Шаблон системной ошибки: «Warning: Fatal error %d occurred at %s. Note the error and time, and contact your system administrator» (MSSQL Error: 21). При возникновении такой ошибки SQL Server немедленно принудительно разрывает клиентскую сессию, откатывает текущую транзакцию и формирует минидамп памяти (Memory Mini-dump / Assert Stack Trace).

Бизнес-риски

Аварийный сброс тяжелых регламентных операций (закрытие месяца, расчет себестоимости в 1С), риск логического и физического повреждения страниц данных на диске (Torn Pages / Bad Checksum), временный переход базы данных в статус In Recovery или Suspect.

Типичные первопричины уровня Severity 21

Источник проблемыМеханизм разрушенияХарактерный признак
Сбой оперативной памяти (RAM ECC)Битовая инверсия (Bit-flip) в пуле буферов памяти (Buffer Pool).Ошибка Access Violation (0xC0000005) в SQL Stack Dump.
Повреждение индексов/страниц базыНесоответствие контрольных сумм страниц PAGE_VERIFY CHECKSUM.Ошибки 823 / 824 / 825 в журнале Windows Event Log.
Ошибки в драйверах RAID/NVMeАсинхронная запись с нарушением порядка Write-Ahead Logging (WAL).Сообщения FlushCache / Write file failure в ERRORLOG.

Регламент локализации и восстановления после ошибки MSSQL Error 21

Сценарий 1: Проверка физической и логической целостности базы через DBCC CHECKDB

Немедленно запустите комплексную проверку целостности поврежденной базы данных:

-- Проверка целостности базы данных с выводом всех детальных сообщений об ошибках:
DBCC CHECKDB ('trade_db') WITH NO_INFOMSGS, ALL_ERRORMSGS;
GO

-- Если DBCC CHECKDB выявил ошибки распределения страниц (Allocation Errors):
-- 1. Переведите базу в Single User Mode:
ALTER DATABASE [trade_db] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
-- 2. Попытка восстановления без потери данных (если возможно):
DBCC CHECKDB ('trade_db', REPAIR_REBUILD);
GO
-- 3. Возврат в Multi User:
ALTER DATABASE [trade_db] SET MULTI_USER;
GO

Сценарий 2: Анализ системного журнала SQL ERRORLOG и дампа памяти

Откройте файл ERRORLOG и найдите секцию ***Stack Dump вокруг времени сбоя:

# Поиск критических дампов в каталоге логов SQL Server через PowerShell:
Get-ChildItem -Path "C:\Program Files\Microsoft SQL Server\MSSQL*.MSSQLSERVER\MSSQL\Log\SQLDump*.mdmp" |
  Sort-Object LastWriteTime -Descending | Select-Object Name, Length, LastWriteTime

Если дамп указывает на стороннюю внешнюю DLL (например, антивирусный перехватчик или некорректный Extended Stored Procedure), удалите или обновите проблемный модуль.

Сценарий 3: Аппаратная диагностика дисковой подсистемы и RAM

  1. Выполните проверку оперативной памяти сервера с помощью специализированных тестов (MemTest86 / встроенные аппаратные утилиты HP/Dell iLO/iDRAC).
  2. Проверьте журнал системных событий System Event Log на наличие событий с источником disk, ntfs, storahci или megaraid (код события 7, 11, 15, 55).
  3. Убедитесь, что для базы данных включен параметр PAGE_VERIFY CHECKSUM: ALTER DATABASE [trade_db] SET PAGE_VERIFY CHECKSUM;.

Типовые ошибки администраторов

  • Применение REPAIR_ALLOW_DATA_LOSS без бэкапа: Команда REPAIR_ALLOW_DATA_LOSS физически удаляет поврежденные страницы вместе со всеми данными пользователей. Применяйте ее ТОЛЬКО при отсутствии актуальной резервной копии.
  • Игнорирование накопительных обновлений (CU): Многие падения ядра по Severity 21 вызваны известными багами оптимизатора запросов, исправленными в свежих Cumulative Updates (CU) от Microsoft.
База данных SQL Server повреждена или падает при выполнении запросов?
Эксперты ITSTM выполнят экстренное восстановление поврежденных страниц данных, проведут ревизию дисковых массивов и предотвратят потерю информации.
💡 Практика специалистов: Если Ошибка 21 возникает строго на одном конкретном SQL-запросе или отчете 1С при абсолютно исправном железе, имеет место редкий баг движка оптимизатора (Query Optimizer Exception). В качестве временного воркэраунда добавьте хинт OPTION (RECOMPILE) или временно отключите параллелизм (MAXDOP 1) для этого запроса.

Частые вопросы (FAQ)

Чем уровень Severity 21 отличается от обычных пользовательских ошибок (Severity 11-16)?

Ошибки уровня 21 являются фатальными: они означают сбой самого процесса СУБД, приводят к мгновенному разрыву сессии SPID и не могут быть перехвачены конструкцией TRY...CATCH в T-SQL.

Что делать, если база данных перешла в состояние Suspect после Ошибки 21?

Переведите базу в аварийный режим (EMERGENCY Mode), проверьте целостность через DBCC CHECKDB и восстановите журнал транзакций (LDF) или поднимите бэкап.

Влияет ли разгон оборудования (Overclocking) на ошибки Severity 21?

Да, нестабильность таймингов оперативной памяти или перегрев контроллера VRM процессора на серверах СУБД являются частой причиной битовых искажений в памяти.

Как предотвратить повреждение данных при сбоях питания?

Используйте RAID-контроллеры с модулями энергонезависимого кэша BBU/Flash-Backed Write Cache (FBWC) и ИБП с настроенным корректным завершением работы ОС.

Полезные материалы
Рекомендуем