Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО АИС.doc
Скачиваний:
4
Добавлен:
10.11.2019
Размер:
637.95 Кб
Скачать

7.5.Сценарии восстановления после сбоев

7.5.1.Поломка диска с пользовательскими данными

Основным вопросом является использование массивов RAID для отказоустойчивости. Если RAID использовался, заменяют диск и запускают RAID.

Простой ИС определяется временем замены диска и времени изменения конфигурации RAID. Если используются горячие зеркалирование, то время изменение конфигурации не потребуются.

Если RAID не используются или используется RAID0, необходимо восстановить данные из резервной копии БД:

  • Выполнение резервной копии активной части журнала транзакций без его усечения, а так же эти копии могут быть использованы для полного восстановления данных;

  • Восстанавливаются данные из полной копии БД (иногда достается последняя дифференциальная копия), необходимо выбрать опцию NORECOVERY;

  • Необходимо восстановление данных из каждой копии журнала транзакций в правильной последовательности, причем каждая копия должна использоваться с опции NORECOVERY, кроме последней RECOVERY. SQL Server при этом выполнит повтор подтверждающий транзакцию и удалит неподтвержденные, т.е. БД будет восстановлено без потерь.

Если файл данных и журнал транзакций (и их копии) находятся на разных дисках, смотри выше.

Если файл данных и журнал транзакций – на одном диске, то восстановить можно только до состояния последней копии журнала транзакции.

7.5.2.Поломка диска с журналом транзакций

Данные восстанавливать не требуется, если файл данных и файл журнала транзакции не находятся на одном диске. Однако, если для журнала транзакций не была создана копия RAID, то при повреждении диска полностью восстановить данные не удаться. Поэтому следует выполнить полную копию БД, копию носителя информации и заменить поврежденный диск.

7.5.3.Поломка диска с бд master

Если при использовании RAID БД MASTER не была полностью зеркалирована, то необходимо ее восстановить из полной копии БД, а затем:

  • Каждую из систем БД Model и MSDB;

  • Все пользователи БД (из резервной копии или файла архива);

  • Файл журнала транзакций.

8.Служба sql Agent

Служба SQL Agent – агент (программа), выполняющий запланированные задачи администратора SQL Server.

Для каждого экземпляра SQL Server существует свой SQL Agent, который отвечает за автоматическое выполнение заданий и извещение операторов об ошибках в работе Server.

SQL Server Agent отвечает за решение следующих задач:

  • Запуск заданий SQL Server, запланированных для исполнения в определенное время или по истечении определенного промежутка времени;

  • Определение условий, при наступлении которых необходимо выполнить заданные администратором действия или запустить задачу, соответствующей этим условиям;

  • Запуск определенных административных задач, выполняющие репликацию.

В работе SQL Agent участвуют:

  • JOB – задания;

  • OPERATORS – операторы;

  • ALERTS – события.

8.1.Задания job

Задания описывают задачи, которые должны быть выполнены автоматически, для каждого задания указывают одно или несколько расписаний (schedule) и указывают, какие из этих заданий указывают, может ли оно быть выполнено вручную (on demand).

Использование заданий снижает загрузку на администратора: SQL Server Agent может быть настроено на отслеживание определенных событий и сопоставление заданий для этих событий. При возникновении указанных (запрограммированных) ситуаций SQL Server Agent запускает задачу, ликвидируя данную проблему.

SQL Server Agent позволяет создавать, планировать выполнение задний для реализации администратора задач.

8.1.1.Реализация заданий

Задания позволяют выполнять стандартные административные функции (резервное копирование).

Задание может быть простой операцией (один этап) или сложной (несколько этапов с управляющей логикой их выполнения).

8.1.2.Типы заданий

SQL Server поддерживает задания, которые включают команды ОС, команды строки, Transact SQL, сценарий Active X, задачи репликации. Причем задания могут содержать компоненты всех типов и одно типов.

8.1.2.1.Команды ОС

Запускаются файлами bat, exe, com

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

После того, как ОС завершила выполнение exe файла, ОС генерирует код завершения, определяет успех/ошибку исполнения команды. Если результат 0 – команда выполнилась успешно, другое – ошибка.

В логике заданий следует определить реакции на различные ошибки.

8.1.2.2.Операторы Transact SQL

Должны содержать имя БД, которое будет выполнять операции, и включать либо непосредственно исполнять оператор, функцию или хранимую процедуру. Задания могут включать пакеты Transact SQL, где каждый оператор отделяется команды GO.

Члены роли sysadmin могут создавать задания, которые будут выполняться от имени другого пользователя.

8.1.2.3.Сценарий Active X

Должны содержать язык сценария и непосредственно команды сценария. Он может быть откомпилирован, тогда запуск его будет производится из командной строки.

8.1.3.Разрешение. Владельцы задания

Все задания могут исполняться от имени определенного пользователя и в его контексте безопасности. При это не важно, кто это задание запускает.

Члены роли sysadmin могут назначать владельцами задания любого пользователя, однако право собственности на задние не дает прав на выполнение его отдельных этапов.

Сценарий Active X и операции командной строки выполнять могут только члены серверной роли sysadmin. Эти этапы выполняются только в контексте безопасности учетной записи SQL Server. Исполнение Active X сценария и операции командной строки в контексте безопасности Windows могут наследовать права на исполнение этапов предоставляемых ролью sysadmin.