Как восстановить базу данных из mdf без ldf

Экспорт в PDF Преобразовать страницу в формат Open Document

Дата создания: 2022/05/23 12:48 (C) mihanik

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

⇑ Наверх ⇑

В моей WIKI постоянно ведётся какая-то работа со статьями.
Если у вас возникли вопросы или замечания,
можете их отправлять на почту support@mihanik.net