Эта статья объяснит вам, как решить SQL Server. 1. Сначала подтвердите, что файлы .mdf и .ldf были резервны.
2. Создайте новую базу данных с тем же именем в SQL Server, а затем остановите службу SQL Server.
3. перезаписывайте файлы .mdf и .ldf, соответствующие новой базе данных с исходными файлами .mdf и .ldf.
4. Перезагрузите службу SQL Server.
5. Выполните следующую команду в анализаторе запросов SQL, чтобы позволить обновлять системные таблицы:
Используйте MasterGOSP_CONFIGURE «Разрешить обновления», 1Reconfigure с overridego
6. Поместите эту базу данных в экстренную режим:
Обновление sysdatabases set status = 32768, где name = 'db_name'go
7. Используйте команду DBCC CheckDB, чтобы проверить ошибки в базе данных:
Dbcc checkdb ('db_name') Go
8. Если команда DBCC CheckDB не выполняется, перейдите к шагу 10, в противном случае поместите базу данных в режим однопользователя, прежде чем пытаться его восстановить:
sp_dboption 'db_name', 'одинокий пользователь', 'true'dbcc checkdb (' db_name ', report_ally_data_loss) Go
Если вам предложено, чтобы база данных не находится в режиме однопользователя при выполнении команды DBCC CHECKDB ('DB_NAME', Repair_allo_DATA_LOSS), перезапустите службу SQL Server и продолжайте пытаться.
9. Если команда dbcc checkdb ('db_name', report_ally_data_loss) не удастся, перейдите к шагу 10, в противном случае, если ошибка в базе данных успешно отремонтирована:
Пересмотрите команду DBCC CHACKDB ('DB_NAME'), чтобы подтвердить, что в базе данных нет ошибок.
Очистить статус подозреваемого базы данных: sp_resetstatus 'db_name'
Очистить статус режима однопользователя базы данных: sp_dboption 'db_name', 'одинокий пользователь', 'false'
Перезагрузите службу SQL Server.
10. Если вышеуказанные шаги не могут решить проблему, пожалуйста, обратитесь к прилагаемому документу и попробуйте восстановить данные в базе данных, восстановив журнал транзакций. Если у вас есть только файлы MDF, проблема более сложна, и нам нужно напрямую перестроить журнал транзакции:
1. Создайте новую базу данных с тем же именем в SQL Server, а затем остановите службу SQL Server.
2. Используйте исходный файл LDF, чтобы перезаписать файл .mdf, соответствующий вновь созданной базе данных, и удалить его файл журнала (.ldf).
3. Запустите службу SQL Server и поместите базу данных в экстренную режим (так же, как указано выше: шаг 5 и шаг 6).
4. Остановите и перезапустите службу SQL Server.
5. Выполните следующую команду, чтобы восстановить файл журнала базы данных: (следующее пример, вам нужно использовать свое фактическое имя базы данных)
Dbcc Rebuild_log ('cas_db', 'd: cas_db cas_db_log.ldf')
6. Замените базу данных на однопользовательский режим.
7. Попробуйте еще раз, используя команду DBCC CheckTable или DBCC CheckDB, чтобы проверить и исправить ошибки в базе данных
-