Мне нужно восстановить сервер MS SQL 2008 R2. Оригинальный сервер был полностью разрушен, спасать нечего. Тем не менее, есть резервная копия всех данных, плюс системные базы данных, мастер, msdb, модель; .bak файлы.
Я установил новую машину, точно такую же версию sql, 2008R2 SP2, и сначала попытался восстановить master db. Восстановление выполнено успешно, но служба sql не может запуститься с использованием восстановленного мастера. Кажется, что каждый путь на старом разрушенном сервере был индивидуальным: базы данных данных, системные базы данных и даже исполняемые файлы sql.
Есть ли способ выяснить пути, используемые на старом сервере, даже для исполняемых файлов sql?
Я полагаю, мне придется снова удалить-установить sql-сервер, чтобы установить все настраиваемые пути, в случае, если мы найдем настраиваемые пути к исполняемым файлам, это правильно?
Кроме того, для справки в будущем, на сервере MS SQL, есть ли способ экспортировать все эти пути?
Не рекомендуется восстанавливать системные базы данных. Просто восстановите данные, содержащие файлы, и, надеюсь, кто-то был достаточно умен, чтобы сделать их включенными (чтобы они содержали пользователей).
Я выполнил эту процедуру, чтобы выяснить, какие пути использовались на уничтоженном сервере:
Более старая резервная копия состояния системы разрушенного сервера была обнаружена локальным администратором. Поэтому я использовал эту резервную копию, чтобы извлечь реестр и найти исполняемый файл MS SQL и путь к экземпляру. HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup
HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL10.MyInstance
На другом, лабораторном сервере SQL, я создал новую базу данных, а затем импортировал резервную копию masterdb разрушенного сервера.
Используя этот запрос на импортированном старом главном БД, были обнаружены пути к данным старого сервера sql:
SELECT name, physical_name FROM destroyed_master
(изменен этот запрос, который выводит пути к данным на живом сервере sql)
SELECT name, physical_name AS current_file_location FROM sys.master_files
Восстановив пути, я сделал новую чистую установку Windows и SQL, использовал восстановленные пути при установке, а затем мастер был успешно восстановлен. Служба SQL заработала, за ней последовало восстановление данных, и сервер вернулся.