DBAtlas · Атлас эксплуатации баз данных

605: Attempt to fetch logical page belongs to a different allocation unit

SQL Server

Что это значит?

При чтении страницы SQL Server обнаружил страницу, принадлежащую другому объекту, а не ожидаемому объекту/единице распределения. Это явный признак серьёзного физического/логического повреждения базы данных.

Почему возникает?

Нарушенные связи страниц из-за отказа хранилища/диска, ошибки контроллера или драйвера, повреждения кеша записи при внезапной потере питания или повреждения файловой системы. 'Transient 605' иногда может быть вызвана временными проблемами ввода-вывода, но устойчивые случаи — это реальное повреждение.

Как исправить

Немедленно выполните DBCC CHECKDB ('mydb') WITH NO_INFOMSGS, ALL_ERRORMSGS, чтобы определить масштаб повреждения. Если возможно, восстановите из заведомо исправного бэкапа (предпочтительно PITR, минимизирующее потерю данных). Протестируйте хранилище/оборудование и проверьте параметр PAGE_VERIFY CHECKSUM. Параметры REPAIR могут привести к потере данных, поэтому используйте их только в крайнем случае и после создания бэкапа; в критичных средах привлеките поддержку Microsoft.

Открыть в DBAtlas →

Ещё по этой СУБД