Event ID 366 WSUS: сбой подключения к базе данных SUSDB — решение
Симптомы сбоя базы данных WSUS (Event ID 366)
В журнале событий Application регистрируется ошибка от источника Windows Server Update Services с кодом Event ID 366: «The WSUS administration console was unable to connect to the WSUS database via the remote API». Консоль управления WSUS падает при попытке открытия или сбрасывает соединение при просмотре обновлений.
| Симптом | Где проявляется | Влияние на инфраструктуру |
|---|---|---|
| Падение консоли WSUS | Оснастка WSUS MMC | Ошибка «Сброс узла сервера» (Reset Server Node) |
| Остановка пула WsusPool | Диспетчер служб IIS | Клиентские компьютеры не получают обновления (код 0x80244007) |
| Таймауты подключения | Журнал WsusCtrl.log | Невозможно синхронизировать метаданные обновлений с Microsoft Update |
Пошаговое решение ошибки подключения WSUS к БД (Event ID 366)
Основная причина ошибки 366 — нехватка оперативной памяти для пула приложений WsusPool в IIS или сбой работы службы базы данных (WID — Windows Internal Database или MS SQL Server).
- Увеличьте лимит памяти для пула приложений WsusPool: по умолчанию IIS выделяет около 1.8 ГБ памяти, что приводит к аварийной остановке пула при обработке тяжелых метаданных:
# Увеличение лимита памяти WsusPool до 8 ГБ (8388608 КБ) или отключение лимита (0):
Import-Module WebAdministration
Set-ItemProperty "IIS:\AppPools\WsusPool" -Name "recycling.periodicRestart.privateMemory" -Value 8388608
# Увеличение лимита очереди запросов (Queue Length):
Set-ItemProperty "IIS:\AppPools\WsusPool" -Name "queueLength" -Value 25000
# Перезапуск пула приложений:
Restart-WebAppPool -Name "WsusPool"- Проверьте состояние службы базы данных (WID / SQL Server):
# Проверка и запуск службы Windows Internal Database (WID):
Get-Service -Name "MSSQL$MICROSOFT##WID" | Start-Service
# Проверка статуса службы WSUS Service (WSUSService):
Get-Service -Name "WSUSService" | Start-Service- Проверьте доступность Named Pipes для WID: откройте командную строку с правами администратора и проверьте подключение через утилиту
sqlcmd:
# Тест подключения к локальной базе WID по именованному каналу:
sqlcmd -S np:\\.\pipe\MICROSOFT##WID\tsql\query -E -Q "SELECT @@VERSION;"Важно: Если служба WID запущена, но база SUSDB переведена в статус Recovery Pending или Suspect, выполните восстановление целостности базы через команду DBCC CHECKDB ('SUSDB', REPAIR_ALLOW_DATA_LOSS) с созданием предварительной резервной копии.
Частые вопросы (FAQ)
Почему консоль WSUS выдает ошибку 'Сбросить узел сервера' при нажатии на любой пункт?
Это происходит из-за падения пула WsusPool в IIS по причине исчерпания Private Memory Limit (по умолчанию 1843200 КБ). Увеличение лимита памяти до 8–12 ГБ решает проблему.
Где физически расположены файлы базы данных WID SUSDB?
По умолчанию файлы SUSDB.mdf и SUSDB_log.ldf находятся в каталоге: C:\Windows\WID\Data\ (или C:\WSUS\UpdateServicesDbFiles).
Как принудительно перезапустить WSUS и IIS одной командой?
Выполните в PowerShell: iisreset; Restart-Service WSUSService, "MSSQL$MICROSOFT##WID".
Помогает ли регулярная очистка WSUS через Server Cleanup Wizard?
Да, очистка отклоненных, замененных и устаревших обновлений снижает нагрузку на базу SUSDB и уменьшает потребление памяти WsusPool на 60-70%.