====== Как восстановить базу данных из mdf без ldf ====== [[ http://wiki.mihanik.net/doku.php?id=субд:ms_sql:как_восстановить_базу_данных_из_mdf_без_ldf&do=export_pdf|Экспорт в PDF ]] ~~ODT~~ Дата создания: 2022/05/23 12:48 (C) mihanik [[..start|{{:level_up.png?nolink&50}}]] MS SQL Server версии 2017, 2016, 2014, 2012 был удален LDF файл как восстановить работу базы данных? Восстановление базы MS SQL после удаления файла логов _log.ldf РЕШЕНИЕ (для примера восстанавливаемая база будет называться testdb ): 1. При удаление ldf файла и попытки запустить базу только с mdf база перейдет в режим: Recovery Pending 2. Переводим базу в offline режим (tasks -> take offline) ALTER DATABASE testdb set offline 3. Копируем mdf в другое место (из места расположения бд) в нашем примере testdb.mdf 4. Удаляем базу. (DELETE) DROP DATABASE testdb 5. Создаем новую бд с таким же именем testdb CREATE DATABASE testdb 6. Переводим базу в offline режим (tasks -> take offline) ALTER DATABASE testdb set offline 7. подменяем testdb.mdf (оригинальным, который вы копировали от поврежденной базы) 8.Переводим базу в online ALTER DATABASE testdb set online ВНИМАНИЕ: вы получите ошибку о том что ldf не соответсвет вашим MDF, но если обновите Microsoft SQL Server Managment Studio увидите что база перешла в режим Restricted User mode 9. пересоздаем ldf фаил (указываем новое им ldf). ALTER DATABASE testdb REBUILD LOG ON ( NAME='testdb_LOG', FILENAME='E:\SQL_bases\testdb_new_LOG.ldf') GO 10. Переводим базу в многопользовательский режим и проверяем на целосность ALTER DATABASE testdb Set MULTI_USER DBCC CHECKDB (testdb ) WITH NO_INFOMSGS [[#top|⇑ Наверх ⇑]]