Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LektsiiNovye.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.92 Mб
Скачать

Восстановление системных баз данных

Системные базы данных master, msdb, и model являются ядром установки SQL Server. Без системных баз данных SQL Server не будет функционировать должным образом, а при повреждении базы данных master, вообще не будет работать. Следовательно, крайне важно иметь резервные копии этих баз данных, чтобы быть готовым к возможным сбоям системы. Для системных баз данных обычно используется простая модель, при которой создаются полные резервные копии базы данных по регулярному расписанию. Такая стратегия в этом случае будет эффективной, поскольку информация в этих таблицах изменяется нечасто. Тем не менее, после существенных изменений в системе, например, создания баз данных, имён входа или изменения параметров конфигурации, следует выполнить внеплановое резервное копирование системных баз данных.

Выполнение резервного копирования и восстановления в SQL Server выполняются в рабочем режиме. Следовательно, чтобы можно было восстановить системные базы данных, сервер SQL Server должен быть запущен. Восстановить работоспособность SQL Server можно двумя способами:

  • если базы данных повреждены, но двоичные файлы (скомпилированные компьютерные программы, или исполняемые файлы) остались неповреждёнными, то системные базы данных можно восстановить при помощи программы установки SQL Server;

  • если повреждена вся система, то следует переустановить её с нуля при помощи программы установки; кроме того, придётся переустановить все пакеты обновлений и исправлений, которые были установлены в системе на момент возникновения сбоя.

После этого SQL Server начинает работать, но в нём отсутствует информация о пользовательских базах данных, именах входа, заданиях, предупреждениях и настройках, которые были в системе до аварийной ситуации. Чтобы исправить эту ситуацию, следует восстановить системные базы данных из резервных копий. Процесс восстановления системных баз данных всегда начинается с восстановления базы данных master. Для восстановления базы данных master используется особая процедура.

Восстановление базы данных master

/* Создаём резервную копию базы данных master */ BACKUP DATABASE MASTER TO DISK = 'T:\BACKUPS\master.bak' WITH INIT; /* Базы данных MSDB */ BACKUP DATABASE MSDB TO DISK = 'T:\BACKUPS\msdb.bak' WITH INIT; /* База данных MODEL */ BACKUP DATABASE MODEL TO DISK = 'T:\BACKUPS\model.bak' WITH INIT;

  • закрыть Management Studio и все остальные программы, установившие соединение с SQL Server;

  • запустить Диспетчер конфигурации;

  • в окне Диспетчера конфигурации щелкнуть левой кнопкой мыши элемент Службы SQL Server 2005 в левой панели; при этом в правой панели отображаются все службы SQL Server; необходимо остановить все службы, щёлкнув правой кнопкой мыши на каждой из них и выбрав из контекстного меню команду Остановить; после остановки всех служб окно программы будет выглядеть следующим образом (рис.17.2):

рис.17.2. Вид диспетчера конфигурации SQL Server

  • открыть командную строку; для этого в меню Пуск выбрать команду Выполнить и ввести команду cmd;

  • перейти в папку binn в установочном каталоге SQL Server при помощи следующей команды:

C:\Documents and Settings\Administrator>cd "\Program Files\ Microsoft SQL Server\MSSQL.1\MSSQL\binn"

  • запустить SQL Server в однопользовательском администраторском режиме, указав в командной строке параметр m, как показано в следующей команде:

C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn>sqlservr –m

  • не закрывая это окно командной строки, запустить ещё один экземпляр командной строки, повторив действия, описанные ранее и запустить SQL Server ещё раз с параметром –E, чтобы установить соединение;

  • выполнить восстановление базы данных master из командной строки sqlcmd при помощи следующей инструкции T-SQL; при вводе инструкции при переходе на новую строку нажимайте клавишу Enter. После того, как вы введете инструкцию GO и нажмете клавишу Enter, будет выполнена вся инструкция.

RESTORE DATABASE master FROM DISK ='T:\BACKUPS\master.bak'; GO

Результат, который должен быть получен, приведён на рис. 17.3.

рис. 17.3. Результат восстановления базы данных master

  • перейти в первое окно командной строки. SQL Server автоматически завершит работу; теперь можно закрыть оба окна командной строки;

  • переключиться на Диспетчер конфигурации SQL Server и запустить только одну службу SQL Server -(MSSQLSERVER).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]