Администрирование MS SQL Server 2000

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    23,02 Кб
  • Опубликовано:
    2012-07-14
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Администрирование MS SQL Server 2000














Курсовая работа

Название дисциплины: Базы данных

Тема: Администрирование MS SQL Server 2000


Студент Пименов Игорь Николаевич

Содержание

Введение

. Задачи администрирования MS SQL Server 2000

. Расширенные свойства объектов

Заключение

Глоссарий

Список использованных источников

Приложения

Введение

SQL Server 2000 - это реляционная система управления базой данных (СУБД). В реляционных базах данных данные хранятся в таблицах. Взаимосвязанные данные могут группироваться в таблицы, кроме того, могут быть установлены также и взаимоотношения между таблицами. Отсюда и произошло название реляционные - от английского слова relational (родственный, связанный отношениями, взаимозависимый). Пользователи получают доступ к данным на сервере через приложения, а администраторы, выполняя задачи конфигурирования, администрирования и поддержки базы данных, производят непосредственный доступ к серверу. SQL Server является масштабируемой базой данных, это значит, что она может хранить значительные объемы данных и поддерживать работу многих пользователей, осуществляющих одновременный доступ к базе данных.

СУБД SQL Server появилась в 1989 году и с тех пор значительно изменилась. Огромные изменения претерпели масштабируемость продукта, его целостность, удобство администрирования, производительность и функциональные возможности.

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

Объектом исследования является Microsoft SQL Server 2000 - законченное предложение в области баз данных и анализа данных для быстрого создания масштабируемых решений электронной коммерции, бизнес-приложений и хранилищ данных. Оно позволяет значительно сократить время выхода этих решений на рынок, одновременно обеспечивая масштабируемость, отвечающую самым высоким требованиям.

Предметом исследования является Администрирование Microsoft SQL Server 2000 - реляционной системы управления базой данных (СУБД). Администрирование подразумевает планирование, разработку, создание, а так же обеспечение надежности, полной работоспособности, резервного копирования и хранения баз данных.

Цель работы раскрыть основные задачи администрирования на основе анализа проработанной литературы и раскрыть наиболее эффективные пути их решения.

Исходя из цели исследования, в работе поставлены следующие задачи:

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

оценить преимущества использования электронной почты для помощи в администрировании;

понять принцип использования дискового пространства для баз данных;

научиться использовать оповещения и владеть файлами баз данных;

понять преимущества механизма расширенных свойств в использовании для аудита вызова хранимых процедур и маркировки таблиц;

оценить высокую надежность и отказоустойчивость при использовании SQL Server 2000;

проанализировать средства безопасности предоставляемые SQL Server 2000 и оценить степень защиты баз данных.

При написании данной работы использовались книги российских и зарубежных авторов, которые занимались и занимаются в настоящее время вопросом администрирования SQL Server 2000, а так же статьи, взятые с различных электронных интернет-ресурсов, так или иначе освещающих вопросы по администрированию баз данных.

В процессе написания курсовой был произведен анализ данных книг, в тексте курсовой использована часть информации приведенной в книгах. Изучены и обобщены основные принципы работы с базами данных. Сравнен опыт зарубежных и российских авторов.

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

1. Задачи администрирования MS SQL Server 2000

К основным задачам администрирования сервера СУБД MS SQL Server 2000 можно отнести следующее:

- инсталляция и обновление версий SQL Server 2000 - администратор должен следить за выходом новых версий продукта, сервисных пакетов (Service Pack) и исправлений (Patches). Как и в любом другом продукте, в SQL Server могут иметься некоторые недоработки и ошибки в программном коде. По мере использования эти недочеты обнаруживаются и устраняются. Если недочеты незначительны, то выпускается сервисный пакет, который обычно исправляет множество недочетов. Если же обнаруживается серьезная ошибка, то производитель выпускает исправление, или, как его еще называют, заплатку. Заплатка обычно предназначена для решения одной, но важной проблемы и выпускается гораздо оперативнее, чем сервисные пакеты;

- запуск, приостановка и останов служб SQL Server 2000 - со стороны SQL Server 2000 только члены фиксированных ролей sysadmin и serveradmin могут выполнять запуск и останов служб сервера. В обычной ситуации останов служб не требуется. Службы SQL Server 2000 могут непрерывно работать на протяжении многих недель и месяцев. Тем не менее, останов служб может понадобиться для выполнения некоторых административных задач, например, перестроения системных баз данных, восстановления их резервных копий и некоторых других задач;

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

- управление хранимыми процедурами, стартующими при запуске SQL Server 2000 - если при каждом старте службы MSSQLServer должны выполняться определенные задачи, то администратор может воспользоваться возможностью автоматического запуска хранимых процедур при запуске сервера;

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

- управление учетными записями - в задачи администрирования входит также создание учетных записей Windows NT и SQL Server, предоставление им доступа к SQL Server 2000;

- резервное копирование - необходимо своевременно создавать резервные копии пользовательских и системных баз данных с помощью полных дифференциальных копий, а также копий журнала транзакций. Резервное копирование позволит восстановить информацию даже в случае полного уничтожения сервера. Также нужно выполнять конфигурирование устройств резервного копирования, следить за носителями и т. д.;

- создание и поддержание баз данных - создание баз данных выполняется на уровне сервера. Администратор должен следить за размером баз данных и при необходимости увеличивать их размер или добавлять дополнительные файлы. В принципе, SQL Server 2000 может самостоятельно увеличивать размер базы данных. Помимо этого, данная категория задач также предполагает выполнение отсоединения и присоединения баз данных;

- мониторинг и оптимизация работы SQL Server 2000 - мониторинг и оптимизация работы SQL Server 2000. Необходимо периодически анализировать работу SQL Server 2000 для поиска «узких мест». Подобный анализ может помочь увеличить производительность сервера.

Инструменты управления службами, утилиты и дисковое пространство.Server 2000 включает мощные инструменты управления под названием SQL Server Enterprise Manager, SQL Query Analyzer и SQL Server Profiler.

Задачей SQL Server Service Manager является предоставление пользователю удобного механизма запуска, останова и приостановки служб SQL Server 2000.Profiler позволяет подключаться к серверу, как и SQL Query Analyzer. Можно использовать шаблоны для трассировки, предопределенные шаблоны: Dead Lock, Replay, Tuning, Stored Procedure и т.п. Помимо этого поддерживается трассировка по размеру (size-based trace) и времени (time-based trace) и новые события для Data File Auto Grow, Data File Auto Shrink, Log File Auto Grow, Log File Auto Shrink, Show Plan All, Show Plan Statistics и Show Plan Text. Query Analyzer включает браузер объектов Object Browser, позволяющий получать информацию об объектах базы данных, в том числе пользовательские и системные таблицы, представления, хранимые процедуры, расширенные хранимые процедуры и функции.

Кроме того, реализованы интегрированная трассировка, связь с Tuning Wizard, клиентская статистика, встроенный отладчик T-SQL (отладка хранимых процедур, глобальные и локальные переменные, стек вызовов), выделение синтаксиса цветом (различные цветовые схемы для SQL Server 6.5, 7.0 и 2000).

Мастер Index Tuning Wizard интегрирован с SQL Query Analyzer . Добавлена поддержка индексированных представлений (Indexed View) и индексов для вычисляемых колонок.

Начальная комплектация SQL Server 2000 имеет свои ограничения; они не работают с другими типами баз данных и могут использоваться не со всеми версиями SQL Server. Один из классов расширений SQL Server от независимых разработчиков является своеобразным мостиком между различными базами данных и предоставляет инструменты управления, которые работают со всеми поддерживаемыми платформами. Иногда возможности этих инструментов превосходят возможности исходных инструментов SQL Server.компании Embarcadero Technologies предоставляет утилиты по управлению схемами, безопасностью и системой хранения и позволяет просматривать процедурный кэш, кэш буфера и текущие блокировки базы данных. DBArtisan дает возможность администрировать базы данных DB2 Universal Database (UDB), DB2/390, Oracle, SQL Server и Sybase. Quest Central for Databases компании Quest Software позволяет администрировать гетерогенные и многоцелевые базы данных и также поддерживает DB2 UDB, DB2/390, Oracle, SQL Server и Sybase. Пакет продуктов SmartDBA компании BMC Software включает в себя продукт под названием SmartDBA Cockpit, который позволяет с помощью Web-браузера администрировать базы данных поддерживаемых платформ. Пакет SmartDBA поддерживает DB2 UDB, DB2/390, Oracle и SQL Server.

Инструменты администрирования некоторых производителей поддерживают SQL Server, но не слишком хорошо приспособлены для решения задач администрирования в рамках крупного предприятия; напротив, они рассматривают SQL Server и другие базы данных как один компонент в целостной картине администрирования предприятия. Один из таких продуктов, AppManager for Microsoft SQL Server компании NetIQ, максимально повышает отказоустойчивость системы за счет использования механизма автоматической фиксации событий и коррекции. Продукт Heroix eQ Database Monitoring & Management, часть программного пакета Heroix eQ Management Suite, поддерживает DB2, Oracle и SQL Server. Среди других участников рынка продуктов администрирования - Unicenter CA-7 Job Management компании Computer Associates (CA), OpenView Smart Plug-in for Microsoft SQL Server компании HP и Tivoli Management Solution for Microsoft SQL Server компании IBM. PocketDBA компании Expand Beyond на ходу администрирует базу данных SQL Server. PocketDBA, работающий на любом мобильном устройстве (таком как Pocket PC), имеющем встроенный браузер, позволяет администрировать базы данных SQL Server, Oracle, DB2 и Teradata.

Другие инструменты администрирования помогают осуществлять повседневное обслуживание и устранять неполадки. В этой категории есть один уникальный инструмент - Log Explorer for SQL Server компании Lumigent Technologies, который позволяет избирательно восстанавливать записи журнала транзакций и решать проблемы пользователя и приложения на мелкомодульном уровне. Log Explorer дает возможность выделять и возвращать к предыдущему состоянию изменения схемы и разрешений и восстанавливать данные на уровне строк. К инструментам автоматизации SQL Server относится Db Maint 4.0, обеспечивающий резервное копирование по расписанию, настройку пересылки журналов и настройку заданий для одного или нескольких серверов. AGS SQL Scribe Documentation Builder компании A&G Software - это автоматизированная система создания документации для SQL Server 2000 и SQL Server 7.0, в которой используются файлы HTML для документирования схемы базы данных и выполнения перекрестных ссылок и задач индексирования.

Электронная почта

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

Электронная почта в MS SQL Server 2000 используется по-разному.SQL Server может принимать и отправлять сообщения по электронной почте, используя соединение с сервером почтовых сообщений. При этом SQL Server может использовать как службу SQL Server Agent, так и службу MS SQL Server (почтовый сеанс SQL Mail).Server Agent (а точнее, SQL Agent Mail) чаще всего связан с выполнением административных функций. Например, этой службой можно воспользоваться для отсылки почтового сообщения оператору при возникновении предупреждения (alert'a). Установка уведомления оператора производится в окне свойств предупреждения на вкладке Ответ (Response).

Кроме того, по электронной почте можно уведомлять оператора о результате выполнения задания (job) - в случае успешного выполнения, в случае ошибки выполнения или в обоих случаях. Mail, в свою очередь, фактически является набором хранимых процедур (см. Приложение A), которые используются службой MS SQL Server для обработки сообщений - как входящих, так и исходящих.

В частности, сообщение может содержать запрос, результат обработки которого может быть переслан отправителю. Использование хранимых процедур SQL Mail в хранимых процедурах и триггерах, написанных пользователем SQL Server, также позволяет формировать e-mail сообщения.

Необходимо отметить, что SQL Server Agent (SQL Agent Mail) и MS SQL Server (SQL Mail) самостоятельно устанавливают соединение с почтовым сервером, хотя и тот и другой могут работать с серверами Microsoft Exchange, POP3 (Post Office Protocol 3) и Microsoft Windows NT Mail.

Кроме того, некоторые операторы пейджинговой связи предоставляют услуги по отправке сообщений на пейджер посредством электронной почты. Иными словами, если вы являетесь администратором SQL Server и хотите быть постоянно в курсе событий - электронная почта SQL Server это то, что вам нужно.

Использование оповещений

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

Событие - это ошибка или сообщение, которые записываются в журнал событий приложений Windows NT или Windows 2000.

Состояние производительности - это характеристика работы системы, доступная для мониторинга с помощью Performance Monitor (Windows NT) или System Monitor (Windows 2000), такая как процент использования ЦП или количество блокировок, используемых SQL Server. В этой лекции мы будем рассматривать System Monitor в Windows 2000, хотя Performance Monitor в Windows NT действует почти так же.

В SQL Server 2000 предусмотрена возможность реагирования на события с помощью оповещений (Alerts). Событием может быть появление сообщения в журнале Windows Application Log или превышение пороговых значений счетчиков производительности (Performance Counters). Причем в последнем случае системный монитор запускать совсем необязательно.

Этот испытанный механизм можно задействовать, если исчерпан заданный лимит свободного места на диске, в файле и т. п. Если, конечно, администратор готов кое-что запрограммировать на языке Transact-SQL.

План реагирования может быть следующим. По составленному заранее расписанию запускается задание, выполняющее хранимую процедуру. Хранимая процедура определяет, например, сколько свободного места осталось на диске, и, если значение достигло указанного предела, производит запись в журнал Windows Application Log. При наличии такой записи в журнале можно задействовать средства реагирования, включающие запуск задания, посылку сообщения по электронной почте или на пейджер. При оповещении необходимо добавить соответствующее сообщение в таблицу сообщений сервера sysmessages.

Если администратору удобнее использовать оповещения на срабатывание порогов в системном мониторе, то можно из процедуры устанавливать значения счетчиков для объектов производительности. Значениями дополнительных (User Settable) объектов производительности в SQL Server 2000 можно управлять, присваивая соответствующие значения переменной типа int.

При использовании счетчиков производительности нужно после установки необходимого значения выполнить сброс, чтобы оповещение не посылалось повторно. В случае, когда оповещение используется для информирования о событии, записанном в журнал Application Log, запись в журнале появится столько раз, сколько выполнится хранимая процедура.

По поводу системного монитора следует сделать одно замечание. Если на компьютере установлены экземпляр SQL Server 7.0 и один или несколько экземпляров SQL Server 2000, то системный монитор показывает только счетчики экземпляров SQL Server 2000.

С помощью оповещений можно заставить систему отреагировать даже на появление на диске заданного файла или папки и запустить приложение на исполнение. Необходимым условием использования оповещений является работа службы SQLAgent.

Дисковое пространство и контроль его использования

Администратор SQL Server отвечает за использование дискового пространства базами данных. Он обязан, с одной стороны, обеспечить это пространство, с другой - контролировать его использование. Естественно, возникает необходимость в технологии и инструментах для управления механизмом выделения дискового пространства. С помощью таких инструментов администратор определяет, сколько и когда нужно добавить в базу дискового пространства, и при необходимости высвобождает избыточное пространство. В SQL Server 2000 предусмотрены средства для решения этой задачи как автоматически, так и вручную. Еще до создания базы данных администратор всегда может рассчитать необходимый минимум дискового пространства. Зная длину записи каждой таблицы и размер страницы (8 Кбайт), определяем количество записей на странице. Исходя из предполагаемого числа записей в таблице, можно выяснить необходимое в будущем число страниц и байтов. Дополнительно следует подсчитать количество страниц для хранения полей типа Text и Image. Необходимо учесть и процент заполнения страниц, если планируется кластерный индекс. Размер некластерных индексов вычисляется аналогично размеру таблицы. Это рутинная работа, но расчеты в точности соответствуют структуре каждой таблицы. Они упрощаются, если использовать заранее подготовленную хранимую процедуру, которая анализирует каждую вновь созданную пустую таблицу. В версиях 6.0 и 6.5 внутреннее представление данных в SQL Server было проще, и на курсах по администрированию рассматривалась специальная хранимая процедура sp_estspace для предварительного расчета объема таблиц. После соответствующей переработки ее можно применять и в более поздних версиях. При создании базы размер файлов обычно устанавливают с большим запасом. Размер журнального файла зависит от расписания резервного копирования и характера работы с базой. Рекомендуемый размер журнального файла составляет 10-25% от размера файла данных.

Существует два пути расширения файлов базы данных: автоматический рост с заданным шагом и добавление дискового пространства вручную. Начальный размер автоматически растущих файлов должен быть большим и шаг приращения - тоже. Если база расположена в нескольких файлах, то SQL Server размещает в них данные сообразно их размеру. Автоматический рост должен быть явлением исключительным и редким. Автоматическое приращение файлов базы маленькими «порциями» приводит к ее сильной фрагментации и в неожиданные моменты может вызвать рост нагрузки на систему. Файлы базы промышленного уровня лучше контролировать вручную. Для журнального файла на всякий случай стоит оставить режим автоматического роста. Не будем рассматривать способы настройки этих режимов, они известны. Автоматическое сжатие базы также может создать незапланированную нагрузку на сервер, хотя выполняется в фоновом режиме и не должно препятствовать работе пользователей. Но и этот процесс лучше контролировать вручную.

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

Для контроля использования дискового пространства в NTFS можно использовать механизм квотирования, учитывающий владение объектами. Для этого нужно знать, кто является владельцем файлов баз данных. По умолчанию файлы баз данных располагаются в папке, где установлен сам SQL Server, например C:\Program Files\Microsoft SQL Server\MSSQL\DATA, владельцем которой является встроенная локальная группа администраторов на отдельном сервере или встроенная локальная группа администраторов на контроллере домена. Полный доступ (Full Control) разрешен только этой группе. Если файлы базы данных расположены не в папке DATA, то разрешения наследуются, но владельцем всегда остается группа администраторов. Выбор владельца файла не зависит от учетной записи пользователя, создавшего базу, и типа регистрации на сервере (в Windows или в SQL Server). Поэтому механизм квотирования без дополнительных настроек использовать нельзя. Нужно каким-то образом изменить имя владельца для файлов, создаваемых пользователями. В NTFS субъект (учетная запись) может стать владельцем какого-либо объекта только при самостоятельной регистрации в системе и при наличии соответствующего разрешения. Чтобы использовать квотирование, придется создать специальную учетную запись, не принадлежащую группе администраторов, и от ее имени завладеть нужными файлами. Затем можно отслеживать использование, данной учетной записью дискового пространства, вызвав через контекстное меню диска диалоговое окно записей квот.

. Расширенные свойства объектов

Использование расширенных свойств объектов

Известно, что SQL Server 2000 поддерживает для объектов базы данных расширенные свойства. В документации можно найти перечень хранимых процедур, работающих с расширенными свойствами, и примеры их использования. Хотя механизм расширенных свойств предлагается в основном разработчикам приложений, администратор баз данных тоже может использовать этот удобный инструмент.

Первое и наиболее очевидное применение расширенных свойств объектов - это, безусловно, документирование. Если администратор создает таблицу в Enterprise Manager и для ее полей дает описание (Description), то описание для каждого поля автоматически превращается в расширенное свойство с именем MS_ Description.

В Query Analyzer контекстные меню объектов содержат команду Extended properties. Первый из таких объектов - это сама база данных. Далее следуют расположенные по уровням иерархии сверху вниз объекты:

- User, Type;

- Table, View, Procedure, Function, Default, Rule;

- Column, Parameter, Index, Constraint, Trigger.

У самой базы данных уровня нет. Если в параметрах процедур, работающих с расширенными свойствами, уровни не указаны, то свойство принадлежит базе. Например, операторыMyDBsp_addextendedproperty NProperty1, Ntest

добавят к базе MyDB свойство Property1 со значением test.

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

Введенные тем или иным способом расширенные свойства можно сохранить при генерации сценариев. Для этого перед запуском генерации нужно выбрать на закладке Formatting параметр Include extended properties, и все расширенные свойства будут занесены в сценарий. В SQL Server 2000 также можно перенести объекты вместе с расширенными свойствами в другую базу, если отметить аналогичный параметр в диалоговом окне мастера импорта/экспорта или в пакете DTS.

Расширенные свойства объектов базы данных можно тиражировать или, напротив, зафиксировать их принадлежность к узлу. При тиражировании расширенные свойства, как одна из составных частей реплики, будут перенесены на сервер-подписчик. Для обеспечения переноса расширенных свойств объектов в составе реплики в свойствах публикации на закладке Articles необходимо выбирать нужную статью, и уже для ее свойств на закладке Snapshot отметить параметр Extended properties.

Все расширенные свойства объектов базы хранятся в системной таблице Sysproperties. Для поиска объектов по расширенным свойствам и их значениям очень удобно использовать Query Analyzer. Нужно выбрать из меню Tools команду Object Search и заполнить соответствующие поля.

Для ускорения написания сценариев в Query Analyzer можно использовать специальные шаблоны для работы с расширенными свойствами объектов. Эти шаблоны находятся в папке Manage Extended Property и соответствуют различным действиям, выполняемым над расширенными свойствами.

Аудит хранимых процедур и маркировка таблиц

Механизм расширенных свойств можно использовать для аудита вызова хранимых процедур, т. е. для получения сведений о том, кто вызвал хранимую процедуру, когда и с какими параметрами. Можно также в значении расширенного свойства процедуры запоминать порядковый номер ее вызова. Для этого нужно создать расширенные свойства для процедуры или пользователя, например, в Query Analyzer, а текст процедуры дополнить вызовом обновления соответствующих расширенных свойств. Информацию, связанную с аудитом, можно получать с помощью SQL Profiler. Преимущество использования расширенных свойств в том, что эта информация становится принадлежностью самого объекта и хранится в нем самом. Хотя такой механизм не заменяет возможностей SQL Profiler.

Расширенные свойства параметров хранимой процедуры могут содержать значения данных параметров и дату использования. Все это относится только к процедурам, написанным самостоятельно, даже когда процедура хранится в базе Master и ее имя начинается с sp_. Тексты системных хранимых процедур для редактирования недоступны, поэтому изнутри нельзя управлять их расширенными свойствами, хотя создавать эти свойства внешними средствами можно.

Расширенные свойства таблиц можно использовать для их аудита. В листинге (см. Приложение Б) дан пример триггера audit на таблицу example. Данный триггер не только запрещает изменение таблицы, но и записывает в значение расширенного свойства table_audit таблицы example имя пользователя, который пытался ее изменить, а в значение свойства пользователя записывает имя таблицы example. Предполагается, что у таблицы было заранее создано расширенное свойство table_audit, а у всех пользователей базы - свойство user_audit. Можно пойти дальше, подсчитать число попыток и при достижении заданного порога наложить на пользователя санкции.

Администратору приходится работать с системными таблицами и представлениями. Для системных таблиц нельзя создавать расширенные свойства, а для системных представлений можно. Однако в базе Master часть таблиц отнесена к пользовательским - это таблица MSReplication_options и таблицы с именами, которые начинаются на SPT_. В базе Distribution все таблицы с именами на MS тоже пользовательские. В отдельных базах значительная часть служебных таблиц, участвующих в тиражировании, тоже отнесена к пользовательским. Для них мы можем применять расширенные свойства.

Расширенные свойства можно использовать и в качестве маркеров для различных характеристик таблиц. Например, можно создать расширенное свойство Text_in_Row и применять его для хранения значения аналогичного свойства таблицы и последующего поиска.

Сопровождение индексов

В SQL Server 2000 можно устранять фрагментацию индексов с помощью команды DBCC INDEXDEFRAG. Допустим, у администратора есть хранимая процедура, которая перестраивает все индексы с заданным значением фрагментации. Эта процедура может устанавливать дату и время дефрагментации индекса в качестве значения расширенного свойства Defrag_Date для данного индекса. Параметр LogicalFrag принимает при этом значение первоначальной фрагментации таблицы.

Надежность и безопасность

Сервер Microsoft SQL Server 2000 позволяет обеспечить максимальную отказоустойчивость путем оперативного резервного копирования, полностью интегрированной доставки журналов и улучшенной кластеризации с передачей нагрузки при сбое.

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

Сервер SQL Server 2000 позволяет создавать разностные резервные копии. При разностном резервном копировании создаются копии всех страниц базы данных, которые были изменены с момента последнего резервного копирования. При таком подходе резервное копирование выполняется быстрее, а сами резервные копии имеют меньший объем, чем при других типах резервного копирования. Кроме того, создание разностных резервных копий возможно при одновременном доступе пользователей к этой базе данных. Благодаря высокой скорости копирования и низкой нагрузке на сервер, разностные резервные копии могут создаваться чаще, чем при других типах резервного копирования, снижая тем самым риск потери данных.

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

Данный метод требует использования приложения-интерфейса виртуального устройства стороннего поставщика, способного непосредственно взаимодействовать с комплексной системой хранения данных предприятия с поддержкой разделенных зеркальных копий и копирования при записи. Общим сценарием при использовании моментального резервного копирования без участия сервера является применение трехстороннего зеркального отображения. Приложение для резервного копирования с интерфейсом VDI может воспользоваться одной из зеркальных копий данных (две другие копии продолжают использоваться для поддержки пользователей) и выполнить резервное копирование этих данных на магнитную ленту или предоставить доступ к этим данным другой системе. В последнем случае такая система резервного копирования может рассматриваться как резервная база данных с немедленным доступом. Резервные копии, созданные с помощью метода моментального копирования без участия сервера, могут быть очень быстро восстановлены путем считывания зеркальной копии с диска. Восстановление с магнитной ленты выполняется намного дольше.

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

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

Сервер SQL Server 2000 позволяет выполнять передачу нагрузки при сбое с одного узла кластера на другой с последующим возвратом переданной нагрузки на исходный узел. При использовании операционной системы Windows 2000 Advanced Server в конфигурации «активно-пассивный» на первичной машине работает экземпляр сервера SQL Server 2000, в то время как другой экземпляр на вторичной машине находится в пассивном состоянии, пока не потребуется передача нагрузки при сбое. При использовании конфигурации «активно-активный» одновременно работают несколько серверов SQL Server 2000 (с различными базами данных), что позволяет организациям с более ограниченным набором оборудования (то есть без выделенных вторичных систем) выполнять передачу нагрузки при сбое с одного узла на другой без использования дополнительного оборудования. Кроме того, SQL Server 2000 Enterprise Edition вместе с Windows 2000 Datacenter Server позволяет поддерживать кластеры с четырьмя узлами и передачей нагрузки при сбое. При сбое на одном из узлов ресурсы сервера SQL Server и операционной системы могут быть перемещены на любой из работающих узлов.

Приложения для электронной торговли в Интернете уязвимы для внешних атак. Поэтому в Microsoft SQL Server 2000 включены усовершенствованные средства защиты, обеспечивающие не только наивысший уровень безопасности, но и существенно облегчающие достижение этого уровня. Во-первых, использование встроенных средств безопасности Windows® 2000 позволило обеспечить в SQL Server 2000 более высокий уровень защиты по умолчанию. Это существенно облегчает и упрощает блокировку серверов в производственной среде.

В SQL Server 2000 введен ряд новых усовершенствованных функций безопасности: мощные и гибкие средства ролевой безопасности с учетом профилей серверов, баз данных и приложений; интегрированный инструментарий ведения журналов безопасности с уровнем вложенности до 18 событий и подсобытий безопасности; поддержка усовершенствованных механизмов шифрования файлов и сетей, включая SSL, Kerberos и делегирование. SQL Server 2000 сертифицирован на наивысший для индустрии уровень безопасности C-2, утвержденный правительством США. Server 2000 под управлением операционных систем Windows NT и Windows 2000 функционирует как служба операционной системы, или, точнее, как две службы - MS SQL Server и SQL Server Agent. Система защиты Windows NT и Windows 2000 требует, чтобы любой доступ к ресурсам был подтвержден наличием соответствующих прав. Хотя все службы и являются частью одного приложения, все же перед тем как начать работу, они обязаны пройти проверку прав доступа подобно обычным пользователям. Как известно, права и разрешения назначаются на основе учетных записей. Таким образом, некоторые службы SQL Server 2000, которые обращаются к ресурсам сети, обязаны иметь собственные учетные записи, причем разные службы могут иметь разные учетные записи.

Различается три вида учетных записей, под которыми может стартовать SQL Server. System (локальная система). Учетная запись локальной системы создается автоматически при установке операционной системы. Под этой учетной записью служба SQL Server запускается с правами операционной системы. Все действия по управлению этой учетной записью, в том числе и изменения пароля, выполняет сама операционная система. Даже администратор не может управлять ею. Данная учетная запись имеет права администратора и обычно по умолчанию ей предоставляется доступ ко всем файлам. Однако если вы решили для запуска SQL Server 2000 использовать локальную учетную запись, убедитесь в том, что она имеет полный доступ ко всем необходимым файлам и папкам SQL Server 2000, и если потребуется, то предоставьте сами этой учетной записи доступ к тем или иным ресурсам.User (локальный пользователь). Данная учетная запись создается на отдельном компьютере. Соответственно, область действия подобных учетных записей ограничивается одним этим компьютером. При запуске SQL Server 2000 под учетной записью локального пользователя, не входящего в группу локальных администраторов, следует предоставить этой учетной записи полный доступ ко всем файлам и папкам SQL Server 2000, а также разрешить ей регистрироваться локально и стартовать в качестве службы операционной системы.for Domain (пользователь домена). Принципиальным отличием учетных записей пользователя домена является возможность работы в сети. Учетные записи этого типа хранятся централизованно на контроллере домена (domain controller) Windows NT или Windows 2000 и доступны с любого компьютера, входящего в домен.

Учетные записи локальной системы и локального пользователя не поддерживают сетевые операции. Следовательно, когда сервер SQL Server 2000 работает под локальной учетной записью, то он будет иметь ограниченные возможности. В частности, нельзя будет выполнять следующие действия: 1) вызов удаленных процедур (Remote Procedure Calls, RPC); 2) репликация; 3) резервное копирование данных на сетевой диск; 4) использование разнородных источников данных, требующих сетевого соединения; 5) поддержка электронной почты.

Функция Distributed Partitioned Views позволяет распределить нагрузку по обработке данных среди группы серверов путем горизонтального распределения данных серверов SQL Server 2000. Управление распределенными данными выполняется серверами совместно, а их обработка производится на каждом сервере автономно. Распределение данных является прозрачным для приложений, обращающихся к базе данных. Для приложения доступна полная копия всех таблиц независимо от того, к какому серверу группы производится обращение. Всем серверам доступны общие подключения и процессы, запросы и обновления, а также распределенный поиск и обновление данных. Процессор обработки запросов сервера SQL Server 2000 имеет ряд усовершенствований, позволяющих обновлять распределенные представления и повышать производительность при обработке распределенных запросов на получение данных с других серверов группы.

Заключение

В заключение можно отметить, что в данной работе перечислены далеко не все методы администрирования Microsoft SQL Server 2000. Изложенные в курсовой работе приемы позволят добиться качественного администрирования SQL Server 2000 и каждый администратор, конечно, может найти еще много других приемов. SQL Server 2000 предоставляет богатые возможности по уведомлению лиц (администратора и операторов СУБД), ответственных за состояние баз данных и всего сервера в целом, о проблемах или событиях, происходящих с данными на сервере. Используя различные способы уведомлений (по электронной почте, на пейджер или же сообщения по сети), можно постоянно держать руку "на пульсе" этой, несомненно, популярной системы управления базами данных. Именно вовремя пришедшее сообщение позволит оперативно отреагировать на возникшую проблему и предотвратить потерю ваших данных.

Так же отметим, что SQL Server 2000 позволяет существенно повысить производительность при обработке таких запросов путем создания для представления уникального кластерного индекса. При создании такого индекса создается необходимое представление, и набор результатов сохраняется в базе данных точно так же, как это делается для таблиц с кластерным индексом. Это повышает эффективность при обработке запросов к базе данных. Оптимизатор запросов сервера SQL Server будет использовать в запросах индекс представления, который не указывает непосредственно на имя представления в операторе FROM. Существующие запросы могут обрабатываться намного эффективнее при извлечении индексированного представления и без необходимости выполнения повторной обработки. Для определенных типов представлений это может существенно повысить производительность.

Реализация индексированных представлений в сервере SQL Server 2000 является уникальной с точки зрения простоты применения. Конкурирующие продукты, в которых реализованы индексированные или реальные представления, требуют специального кодирования запросов с включением ссылок на представления. Поэтому существующие запросы должны быть откорректированы с включением инструкций, позволяющих процессору обработки запросов найти необходимые индексированные или реальные представления. Как уже отмечалось выше, реализация индексированных представлений на сервере SQL Server 2000 не требует перекодирования запросов. Процессор обработки запросов автоматически и без вмешательства администратора базы данных распознает и обрабатывает индексированные представления.

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

Естественно, всю функциональность SQL Server 2000 невозможно охватить в рамках данной работы. Остались неосвещенными вопросы интеграции со службой каталогов, шифрование трафика по всем сетевым библиотекам, развитие служб тиражирования, включая обновление данных на подписчике при недоступном издателе на основе очередей сообщений и репликацию схемы данных, поддержка XML на уровне OLE DB-провайдера SQL Server, усовершенствования в службе полнотекстового поиска, службе преобразования данных, аналитических службах и многое другое, что заслуживает внимания. Думаю, что данный материал, несмотря на его, по большому счету, достаточно вводный характер, поможет лучше освоиться в мире новых возможностей SQL Server 2000 и с максимальной отдачей использовать их для решения своих конкретных задач, тем более что данный пакет все чаще используется во многих отраслях производства и бизнеса.

Глоссарий

№ п/пПонятиеОпределение1 База данных Структурированный, постоянно пополняемый и обновляемый набор данных 2ПОПрограммное обеспечение3СУБДСистема управления базами данных4ЭВМЭлектронно-вычислительная машина5SQL (Structured Query Language)"Язык структурированных запросов" - общепринятый язык для работы с реляционными базами данных6SQL Profiler"Профайлер" - утилита SQL Server, применяемая для слежения за производительностью сервера и за происходящей деятельностью7SQL Query Analyzer"Анализатор запросов" - утилита, ставшая заменой применению ISQL/W в качестве инструментального средства для эпизодических запросов SQL Server8SQL ServerПродукт фирмы Microsoft - система управления реляционными базами данных.9SQL Server Agent"Агент SQL Server" - программа, выполняющая некоторые задачи в фоновом режиме10SQL Server Analysis ServicesПрограмма-вставка (add-in program), созданная для помощи в аналитической обработке данных в реальном времени

управление база данные утилит таблица

Список использованных источников

1. Козлов А.И. Администрирование Microsoft SQL Server 2000. Учебный курс MCSA/MCSE, MCDBA [Текст]: Перевод с английского - 2-е изд., испр. - М.: Издательско-торговый дом «Русская Редакция». 2002. - 640 с. - ISBN 0-7356-1429-6

. Конноли, Томас, Бегг, Карелии. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. [Текст]: 3-е издание, пер. с англ. - М.: Издательский дом "Вильямс". 2003. - 1440 с. - ISBN 5-8459-0527-3

. Мамаев Е., Шкарина Л. Microsoft SQL Server 2000 для профессионалов. [Текст]: - СПб: Питер. 2001. - 430 с. - ISBN 1-3452-4711-2

. Материалы сайта «Interface. Internet & Software Company». [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Microsoft». [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Интернет университет». [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Интерфейс ру» [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Компьютерная документация». [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Открытые системы». [Электронный ресурс]. - Режим доступа: #"justify">. Материалы сайта «Статьи на всякий случай жизни». [Электронный ресурс]. - Режим доступа: #"justify">. Хоторн Роб. Разработка баз данных, Microsoft SQL Server 2000. [Текст]: Пер. с англ. - М.: Издательский дом "Вильямс". 2001. - 360 с. - ISBN 5-8459-0187-1

. Шарон Б., Мэйбл Грэг. SQL Server 2000. [Текст]: Энциклопедия программиста. ДиаСофт, 2001. - 490 с. - ISBN 966-7393-66-6

Приложения

Приложение А

Таблица. Хранимые процедуры SQL Server для работы с почтой

Название процедурыХарактеристикаxp_sendmailотсылает сообщение адресату; предусмотрена возможность прикрепления файловxp_readmailчитает сообщение из почтового ящика SQL Server'axp_deletemailУдаляет сообщение из почтового ящика SQL Server'axp_findnextmsgиспользуется процедурой sp_processmail для обработки поступивших сообщенийsp_processmailиспользует перечисленные выше хранимые процедуры для отправки, приема и обработки сообщенийxp_startmailзапускает сессию SQLMailxp_stopmailостанавливает сессию SQLMail

Приложение Б

Листинг. Пример триггера, который запрещает изменение таблицы.

TRIGGER [audit] ON [dbo].[example] INSERT, UPDATE, DELETE @currentuser varchar(30)@currentuser = current_usersp_updateextendedproperty table_audit ,

@currentuser, user, dbo,table,examplesp_updateextendedproperty user_audit ,

example, user, @currentuser

..........

..........

..........transaction


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!