Введение в дисциплину «Безопасность систем баз данных». Теоретические основы построения реляционных баз данных. Верификация баз данных и проведение аудита в СБД. Распределенные базы данных, страница 23

Клиент-серверную архитектуру имеют не только АИС, но и СУБД. Строго говоря, сервером является именно ядро СУБД. Все прочие компоненты СУБД, включая инструменты администрирования, являются клиентами по отношению к ядру. Ядро СУБД устанавливается на сервере сети, который должен иметь достаточный запас производительности, большой объем оперативной и внешней памяти – для хранения и обработки больших массивов информации. Клиентские компоненты СУБД разворачиваются на множестве рабочих станций сети: с них осуществляется параллельный доступ конечных пользователей к данным.

3.2. СУБД Microsoft SQL Server

Microsoft SQL Server 2005 реализован в виде набора служб операционной системы Windows, что позволяет СУБД быть частью ОС, иметь собственные права доступа и не зависеть от пользователя, работающего на компьютере в данный момент.

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

Администрирование сервера пользователем, запуск и остановка служб, а также вся работа с пользовательскими БД осуществляется с применением инструментов SQL Server.

3.2.1. Службы SQL Server 2005

Служба MSSQLServer

Служба MSSQLServer выполняет все основные функции ядра СУБД (см. раздел 1), а также:

·  регистрирует пользователей;

·  контролирует права доступа;

·  устанавливает  соединения с клиентами;

·  выполняет запросы и хранимые процедуры;

·  контролирует использование системных ресурсов.

Последняя функция выполняется за счет периодического опроса системы о достаточности количества свободных ресурсов (памяти, процессорного времени). Выделяемые ресурсы наиболее эффективно распределяются между всеми пользователями, в результате чего достигается максимальная производительность обработки запросов. При использовании многопроцессорной системы служба MSSQLServer выполняет распараллеливание «тяжелых» запросов пользователей между всеми доступными процессорами.

Служба MSSQLServer всегда запускается первой. Все прочие службы являются своего рода надстройками над ней и могут запускаться только после успешного запуска MSSQLServer.

Служба SQLServerAgent

Служба SQLServerAgent Предназначена для автоматизации администрирования и SQL Server 2005. В ее основные задачи входит:

·  автоматический запуск заданий;

·  извещение операторов о сбоях в работе сервера;

·  обработка событий.

Задания описываются оператором СУБД в виде последовательности действий (шагов) и сохраняются в системной БД Msdb. Каждый отдельный шаг может быть описан в виде SQL-скрипта, сценария на JavaScript или VBScript, одиночного вызова хранимой процедуры или команды операционной системы (реально выполняется командным процессором Windows – cmd.exe). Также в качестве шага задания может быть выбрано одно из стандартных действий: резервное копирование баз данных, репликация и другие.

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

Задание запускается по установленному расписанию: в конкретный момент времени (в заданный администратором день и час), во время наименьшей активности пользователей, сразу после старта службы SQLServerAgent. Любое задание можно запустить и вне расписания, по требованию пользователя.