Учитывая, что DBCC CHECKALLOC тоже не работает, без сообщений о коррупции, ваша база данных имеет поврежденные метаданные, и вам необходимо восстановить их из своих резервных копий (первое, что он делает, - это выполнить некоторые основные проверки по трем критическим системным таблицам, которые ему нужны, и если они сильно сломаны, с сообщением 8921 оно не сработает). У вас нет другого выбора здесь - вы не можете запустить ремонт, поскольку вы не можете запустить DBCC CHECKDB.
Возможно, вы можете сузить, какая системная таблица повреждена, используя DBCC CHECKTABLE на последовательных идентификаторах объектов из sys.objects, а затем вручную редактировать вокруг коррупции, но это очень продвинутый и имеет очень низкие шансы на успех.
Если у вас нет резервных копий, вам нужно будет создать новую базу данных, а затем экспортировать все схемы и данные в новую базу данных.
Это единственное сообщение, которое оно возвращает? Как долго он работает, пока он не остановится? И что произойдет, если вы запустите DBCC CHECKALLOC в одной базе данных? –
Показывает следующие сообщения после запуска DBCC CHECKALLOC. Msg 8921, уровень 16, состояние 1, строка 2 Проверка завершена. Сбой был обнаружен при сборе фактов. Возможно, tempdb из космоса или системная таблица несовместимы. Проверьте предыдущие ошибки. CHECKALLOC нашел 0 ошибок распределения и 0 ошибок согласованности в базе данных «OldLotus». –