Переустановил Windows на моем блоке разработки, забыл сделать резервную копию любой из моих баз данных в процессе работы в SQL Server Express 2008? Могу ли я восстановить что-нибудь?

Переустановил Windows на моем блоке разработки, забыл сделать резервную копию любой из моих баз данных в процессе работы в SQL Server Express 2008? Могу ли я восстановить что-нибудь?

У меня все еще есть файлы из старой установки. Куда я смотрю?

2 ответа

Решение

Спасибо Hmallett, что указал мне в правильном направлении.

Я использовал это, чтобы восстановить мои файлы. Нашел их в C:\Program Files\Microsoft SQL Server\MSSQLEXPRESS\DATA. Восстановил мои базы данных на внешний USB-диск FAT32 (чтобы удалить разрешения).

Затем я открыл SQL Server Management Studio и использовал это, чтобы прикрепить его:EXEC sp_attach_db @dbname = N'pickyournewdatabasename', @filename1 = N'F:\TheFolderWhereYouHaveTheRecoveredDB\olddatabasename.mdf' @filename2 = N'F:\TheFolderWhereYouHaveTheRecoveredDB\olddatabasename_log.ldf'

Я пропустил добавление файла журнала ldf, и он сгенерировал новый. Вы можете добавить его, если хотите. После этого шага все работает, теперь вы должны использовать обычные опции резервного копирования и восстановления.

PS. Убедитесь, что вы установили ту же версию SQL Server, что и старая. Если вы получаете 661 665 ошибку. Перейдите сюда: Ошибка версии SQL Server. У меня была установлена ​​R2 и на веб-платформе установлена ​​R1 (ошибка).

Файлы, которые вы ищете, - это файлы.ldf и.mdf.

По умолчанию, если ваша база данных называется foobar, у вас будет файл foobar.mdf и файл foobar_log.ldf.

Вы можете скопировать их в новую установку и использовать sp_attach_db из управления SQL для повторного присоединения файлов. sp_attach_db устарел в SQL 2005, но я считаю, что он все еще работает в SQL 2008.

Другие вопросы по тегам