[РЕШЕНО] Восстановление базы данных из mdf без ldf (зашифрованы \ потерены)

Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
Ответить
[РЕШЕНО] Восстановление базы данных из mdf без ldf (зашифрованы \ потерены)
Как восстановить базу данных SQL из файла .MDF без ldf - журнал были удалены \ зашифрованы - потеряны. Microsoft SQL Server 2017

Вопрос: Как восстановить базу данных MSSQL из файла .MDF
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
Услуги Системного Администратора - Работаю только с Юр. Лицами по договору обслуживания.
Спасибо!
Спасибо
Полетел RAID массив. На нем были базы данных MSSQL2014. Не по всем базам были бэкапы.
Нам восстановили с дисков файлы баз данных. Но без лога они не присоединялись.
Лог не создавался заново. Видимо из-за зависших транзакций или активных пользователей на момент аварии. Долго искал в интернете как присоединить базу данных без лога.
Все рекомбинации и руководства что находил не помогли.
Оставалась та же проблема , лог не создавался и база не присоединялась.
Только ваш способ действительно помог присоединить базы.
Огромное спасибо!
Прекрасный способ. Всё сработало. Денису огромное спасибо.
Метод рабочий!
Вам Денис, огромное спасибо!
Дай Бог тебе всех благ, добрый человек!
Спасибо!
Рабочая схема !!!
Спасибо)))
ОГРОМНОЕ Спасибо!!
Всех благ!
Спасибо! Дай обниму, бро.
Спаибо, большое!
Доброго дня Денис. Подскажите, как восстановить базу. Файл резерва перезаписался данными пучтыми.
спс
прокатило
Огромное спасибо!
РАХМЕТ ОТ ДУШИ БРАТ!!!
Спасибо, помогло.

Только, пункты 1 - 8 не нужны, можно просто выполнить создание лог файла и перевод в норм режим

9. пересоздаем ldf фаил (указываем новое им ldf).
ALT ER   DATABASE testdb REBUILD LOG ON (
NAME='testdb_LOG',
FILENAME='E:\SQL_bases\testdb_new_LOG.ldf')
GO

10. Переводим базу в многопользовательский режим и проверяем на целосность
ALT ER   DATABASE testdb Set MULTI_USER
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
:) ;) :D 8-) :( :| :cry: :evil: :o :oops: :{} :?: :!: :idea:
Защита от автоматических сообщений. Введите символы, изображенные на этой картинке в поле ввода &quote;Код подтверждения&quote;.