НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ «МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ» Реферат на тему: Задачи и средства администрирования в СУБД Microsoft SQL Server. Выполнил студент группы А-13-08 кафедры Прикладной Математики Захаров Антон Преподаватель Сидорова Наталья Петровна Москва, 2011 г. Содержание. Введение ................................................................................................................. 2 Администратор базы данных ................................................................................... 3 Основные типы администраторов баз данных .............................................. 4 Задачи администрирования баз данных .................................................................. 5 Средства администрирования SQL Server .............................................................. 8 Management Studio ......................................................................................... 8 Business Intelligence Development Studio ........................................................ 9 Configuration Manager .................................................................................... 10 Reporting Services ......................................................................................... 11 Dedicated Administrator Connection ............................................................... 12 Surface Area Configuration ............................................................................ 13 Profiler .......................................................................................................... 13 Прочие утилиты SQL Server ........................................................................ 15 Заключение ............................................................................................................ 17 Список литературы ............................................................................................... 18 1 Введение. Современные базы данных – это сложные многофункциональные программные системы, работающие в открытой распределѐнной среде. Они уже сегодня доступны для использования в деловой сфере и выступают не просто в качестве технических и научных решений, но как завершѐнные продукты, предоставляющие разработчикам мощные средства управления данными и богатый инструментарий для создания прикладных программ и систем. С появлением и развитие современных СУБД вопросу администрирования баз данных уделяется всѐ большее внимание. В данной работе постараемся ответить на следующие вопросы: что представляет собой администрирование базы данных, в чем заключаются его основные функции и задачи. Кроме того, опишем основные средства администрирования баз данных в СУБД Microsoft SQL Server и Oracle. В заключение, постараемся сравнить возможности администрирования этих систем. 2 Администратор базы данных. Функционирование базы данных невозможно без участия специалистов, обеспечивающих создание, функционирование и развитие базы данных. Такие специалисты называется администраторами базы данных. Нельзя рассматривать администратора баз данных только как квалифицированного технического специалиста, так как это не соответствует целям администрирования. Очень тесная связь у администратора на всех этапах жизненного цикла базы данных наблюдается с конечными пользователями. Это взаимодействие начинается на начальных стадиях проектирования системы, когда изучаются потребности пользователей, уточняются особенности предметной области, и постоянно поддерживается как на протяжении процесса проектирования, так и функционирования системы. В определѐнном смысле администраторов можно считается составной частью базы данных. В зависимости от сложности и объѐма банка данных, от особенностей используемой СУБД, служба администрации базы данных может различаться по составу и квалификации специалистов. 3 Основные типы администраторов баз данных. Системный администратор отвечает за резервирование и восстановление данных, осуществляет контроль производительности системы, поиск и устранение неисправностей. Как правило, данный специалист в курсе текущего состояния, а также нынешних и будущих потребностей базы данных в плане ѐмкости. Архитектор баз данных занимается разработкой, построением и оптимизацией конфигурации баз данных, разработкой интерфейсов взаимодействия базы данных с различными приложениями. Также может отвечать за разработку документации. Аналитик баз данных занимается проведением исследований, составлением прогнозов, анализом результативности использования базы данных и поиском путей еѐ повышения. В отдельных случаях может заниматься сбором и обработкой информации, загрузкой данных в базу. Администратор хранилища данных осуществляет контроль корректности расчѐтов, производящихся в хранилище данных, предоставление доступа к хранилищу, ведение работы по сохранению истории запросов, консультирование сотрудников по вопросам логики работы хранилища данных. Другие типы администраторов баз данных: программист баз данных, разработчик моделей данных, администратор web-узла, проблемно- ориентированный администратор базы данных, аналитик производительности. 4 Задачи администрирования баз данных. Перечислим основные задачи администрирования баз данных: Анализ предметной области включает описание предметной области, определение статуса информации, определение потребностей пользователей и объѐмновременных характеристик обработки данных. Проектирование структуры базы данных заключается в определении состава и структуры информационных единиц, составляющих базу данных, задании связей между ними, выборе методов упорядочения данных и методов доступа к информации, а так же описании структуры базы данных. Задание ограничений целостности: определение ограничений целостности, вызванных особенностями предметной области и структурой базы данных, разработка процедур обеспечения целостности базы данных при вводе и корректировке данных, обеспечение ограничений целостности при параллельной работе пользователей в многопользовательском режиме. Первоначальная загрузка и ведение базы данных: разработка технологии первоначальной загрузки и ведения (изменения, добавления, удаления записей) базы данных, проектирование форм ввода, создание программных модулей, подготовка исходных данных, ввод и контроль ввода. Защита данных от несанкционированного доступа: обеспечение парольного входа в систему (регистрация пользователей, назначение и изменение паролей); обеспечение защиты конкретных данных (определение прав доступа групп пользователей и отдельных пользователей, определение допустимых операций над данными для отдельных пользователей, выбор/создание 5 программно-технологических информации с целью средств защиты защиты данных от данных; шифрование несанкционированного использования); тестирование средств защиты данных; фиксация попыток несанкционированного доступа к информации; исследование возникающих случаев нарушения защиты данных и проведение мероприятий по их предотвращению. Защита баз от потери данных. Одним из способов защиты от потери данных является резервирование. Используется как при физической порче файла, так и в случае, если в БД внесены нежелательные необратимые изменения. Обеспечение восстановления базы данных заключается в разработке программнотехнологических средств восстановления базы данных, организации ведения системных журналов. Анализ обращений пользователей к базе данных: сбор статистики обращений пользователей к базе данных, еѐ хранение и анализ. Анализ эффективности функционирования базы данных и развитие системы: анализ показателей функционирования системы (время обработки, объем памяти, стоимостные показатели), реорганизация и реструктуризация баз данных, изменение состава баз данных, развитие программных и технических средств. Работа с пользователями: сбор информации об изменениях в предметной области, об оценке пользователями работы базы данных, определение регламента работы пользователей с базой данных, обучение и консультирование пользователей. Подготовка и поддержание системных программных средств: сбор и анализ информации о СУБД и других прикладных программ, приобретение программных 6 средств, их установка, проверка работоспособности, поддержание системных библиотек, развитие программных средств. Организационно-методическая работа: выбор или создание методики проектирования базы данных, определение целей и направлений развития системы, планирование этапов развития базы данных, разработка и выпуск организационно-методических материалов. 7 Средства администрирования Microsoft SQL Server Средства администрирования включены в состав всех СУБД. Особенно развиты эти средства в корпоративных СУБД. В данном разделе подробно рассмотрим основные средства администрирования Microsoft SQL Server 2008. Большинство этих средств доступно и в более ранних версиях SQL Server. Management Studio. Программы Microsoft SQL Server 2008 SQL Server Management Studio SQL Server Management Studio – это главный рабочий инструмент администратора в SQL Server. В основу SQL Server Management Studio легла среда разработки Visual Studio, что хорошо видно по структуре его окон. В первых бета-версиях SQL Server 2005 вместо SQL Server Management Studio использовалось название «SQL Workbench», что осталось в названии исполняемого файла (sqlwb.exe) и в некоторых служебных сообщениях. Рассмотрим ещѐ несколько моментов, связанных с применением Management Studio. Любому администратору и разработчику приходилось писать сотни скриптов SQL. В SQL Server Management Studio появились новые возможности в этой области. Первое, о чем необходимо сказать, – что часто совершенно нет необходимости создавать скрипт с нуля. Можно сэкономить время, если воспользоваться средствами автоматической генерации кода скриптов. Template Explorer Первая возможность – воспользоваться готовыми шаблонами (встроенными или добавленными вами) при помощи Template Explorer. Во 8 встроенной библиотеке шаблонов предусмотрены запросы для самых разных ситуаций. Автоматическая генерация запросов Второй вариант – воспользоваться средствами автоматической генерации скриптов из Object Explorer. Например, для таблицы можно сгенерировать скрипты на еѐ создание (для создания похожей таблицы), удаление, выборку данных (будут перечислены все столбцы таблицы), добавление новых данных, изменение существующих записей и удаление старых. Если столбцов в таблице много и вы не помните наизусть все их имена, такой подход может сэкономить много времени. Query Designer Третий вариант – воспользоваться графическим построителем запросов Query Designer в SQL Server Management Studio. Это средство особенно удобно в тех ситуациях, когда вам нужно создать большой запрос, со множеством соединений, условий и сортировок. С его помощью можно создавать очень сложные запросы, вообще не имея никакого представления о синтаксисе языка Transact-SQL. Business Intelligence Development Studio. Программы Microsoft SQL Server 2008 SQL Server Business Intelligence Development Studio Business Intelligence Development Studio – это второе важнейшее графическое средство для работы с SQL Server. Business Intelligence дословно переводится как «бизнес-разведка», и, вообще говоря, этот термин традиционно относится к технологии Data Mining – добычи данных. Business Intelligence Development Studio, как и SQL Server Management Studio, объединяет в себе возможности сразу нескольких программных средств, 9 которые в предыдущих версиях SQL Server существовали по отдельности. Это средство предназначено для работы с программными проектами. При помощи Business Intelligence Development Studio вы можете работать с проектами следующих типов: Analysis Services – представляют собой базы данных OLAP с необходимыми компонентами (кубами, общими измерениями, моделями добычи данных и т. п.); Integration Services – призваны заменить функциональность пакетов DTS предыдущих версий SQL Server. Report Project – это отчѐты к базам данных; Report Model – специальный тип отчѐта, предназначенный для того, чтобы наглядно представить структуру источника данных. Главные компоненты такого проекта – это Data Source Views (фактически, это диаграммы баз данных) и Report Models (описание сущностей, атрибутов и связей между ними в базе данных). Интерфейс Business Intelligence Development Studio вряд ли заслуживает отдельного описания, поскольку при запуске этого приложения вам просто открывается среда разработки Visual Studio. В ней вы должны создать или открыть проект нужного вам типа и работать с ним стандартными средствами Visual Studio. Configuration Manager. Программы Microsoft SQL Server 2008 Configuration Tools SQL Server Configuration Manager 10 SQL Server Configuration Manager – это ещѐ одно средство администрирования SQL Server. Объединило в себе несколько утилит, каждой из которых соответствует свой контейнер: SQL Server Services – службы SQL Server; SQL Server Network Configuration – сетевая конфигурация SQL Server, отвечает за серверные сетевые библиотеки SQL Server; SQL Native Client Configuration – конфигурация SQL Native Client, за параметры работы SQL Native Client. О каждом из них (и о компонентах SQL Server, которыми управляет Configuration Manager) рассказывается в следующих разделах. Reporting Services. SQL Server Reporting Services (SSRS) – службы отчѐтности SQL Server – программная серверная система создания отчѐтов. Она может быть использована для подготовки множества интерактивных и печатных отчѐтов. Система администрируется через веб-интерфейс. Reporting Services используют интерфейс веб-служб для поддержки разработки обычных отчѐтных приложений. Reporting Services были впервые выпущены в 2004 году как дополнение для SQL Server 2000. Вторая версия была выпущена в виде составной части SQL Server 2005 в ноябре 2005 года. Последняя на данный момент версия была выпущена как часть SQL Server 2008 в августе 2008. В SSRS отчѐты описываются при помощи Report Definition Language (RDL) на языке разметки XML. Отчѐты могут проектироваться при помощи последних версий Microsoft Visual Studio (включая Visual Studio.NET 2003 и Visual Studio 2005). Отчѐты, определѐнные при помощи RDL, могут создаваться во множестве различных форматов, включая Excel, PDF, CSV, XML, TIFF (и других графических форматах), а также HTML Web Archive. SQL Server 2008 SSRS также может подготавливать отчѐты в формате Microsoft Word (DOC). Сторонние генераторы отчѐтов предлагают возможность создания отчѐтов в дополнительных форматах. 11 Пользователи могут работать с веб-службой Report Server напрямую или использовать Report Manager – веб-приложение, взаимодействующее с вебслужбой Report Server. При помощи Report Manager могут просматривать и управлять отчѐтами, также как и управлять и оперировать источниками данных и настройками безопасности. Отчѐты могут рассылаться по электронной почте или записываться на файловую систему как обычный файл. Защита выполняется на основе ролей и может накладываться на отдельные элементы, как например, отчѐт или источник данных, каталог элементов или сайт вообще. Роли безопасности и права являются наследуемыми и могут быть переопределены. Dedicated Administrator Connection. При работе с предыдущими версиями SQL Server иногда возникала ситуация, когда какой-то некорректный запрос или клиентское соединение забирали все ресурсы сервера. Сервер переставал отвечать на запросы (в том числе и на запросы подключения от администратора), и выйти из этой ситуации можно было только при помощи перезапуска сервера. При этом, конечно, терялись все сеансы других пользователей. SQL Server позволяет решить такие проблемы. При запуске SQL Server сразу резервирует ресурсы на одно подключение пользователя. Даже если какойто запрос забрал все ресурсы, администратор сможет подключиться к серверу за счѐт резерва. После этого уже можно, например, закрыть проблемный сеанс. Средство для подключения к SQL Server 2005 за счѐт специально зарезервированных для этого ресурсов называется DAC (Dedicated Administrator Connection, выделенное административное подключение). Для того чтобы подключиться к серверу в этом режиме, используется команда SQLCmd с параметром -A, однако в окончательную версию SQL Server 2005 была добавлена возможность использовать для этой цели и SQL Server Management Studio. По умолчанию соединение в режиме DAC можно выполнить только с локального компьютера (т. е. с того компьютера, на котором работает SQL Server). В этом режиме к серверу одновременно может быть установлено только 12 одно соединение. Подключение в режиме DAC может производиться только от имени учѐтной записи, обладающей правом CONTROL SERVER для экземпляра SQL Server. По умолчанию этим правом обладают только системные администраторы. Подключение в режиме DAC является «не убиваемым» (его нельзя закрыть командой KILL). Surface Area Configuration. Программы Microsoft SQL Server 2008 Configuration Tools Surface Area Configuration for Services and Connections (Surface Area Configuration for Features) Это ещѐ одно средство администрирования SQL Server – Server Surface Area Configuration (настройка контактной зоны SQL Server). Под «настройкой контактной зоны» подразумевается возможность убрать с SQL Server все лишние компоненты, которые в конкретной задаче могут быть не нужны. Смысл этого действия – максимально снизить число возможных способов проникновения в SQL Server для хакеров за счѐт сокращения «поверхности, доступной для атаки». Отметим, что SQL Server Surface Area Configuration не относится к числу незаменимых приложений. Настраивать режим работы служб и включать/отключать сетевые библиотеки можно при помощи SQL Server Configuration Manager, а включать/отключать возможности компонентов SQL Server можно при помощи стандартных средств, например, SQL Server Management Studio или из кода Transact-SQL. Однако в Surface Area Configuration управление этими возможностями сведено воедино, что очень удобно. Profiler. Программы Microsoft SQL Server 2008 Performance Tools SQL Server Profiler SQL Server Profiler, который специалисты обычно называют профилировщиком, – одно из самых полезных программных средств, входящих в состав SQL Server. Главное назначение SQL Server Profiler – это просмотр (или запись в файл 13 или в таблицу) всех событий SQL Server, включая выполняемые на нем команды Transact-SQL. Типичная ситуация, когда без профилировщика не обойтись, выглядит так: у вас есть приложение, написанное другими разработчиками, которое обращается к таблицам, представлениям, хранимым процедурам своей базы данных SQL Server. Как показывает опыт, разработчики редко балуют пользователей своего приложения (и администраторов), которые их обслуживают, подробной документацией, в которой описаны таблицы и другие объекты, используемые приложением. В то же время часто возникают ситуации, когда необходимо получить информацию о том, какие команды выполняет на сервере приложение. Но у него есть и другие применения. Например, профилировщик можно использовать для записи активности пользователей в файл или в таблицу SQL Server, а затем использовать полученные данные для аудита. Профилировщик поставлялся и с предыдущими версиями SQL Server, однако в SQL Server 2005 его возможности значительно расширены. Были добавлены новые возможности: Профилировка Analysis Services – возможность просматривать команды и события не только для обычных баз данных, но и для баз данных OLAP; Профилировка событий Integration Services – возможность отслеживать ход выполнения новых пакетов DTS; В профилировщик добавлено множество новых событий и источников информации, которые могут выбираться для записи в файл трассировки. Определение того, что нужно записывать в файл трассировки, теперь можно сохранить в формате XML; Возможность сохранять в формате XML и результаты трассировки (возможность записи в форматах ANSI, OEM, UNICODE также сохранена); Возможность сохранять в формате XML даже планы выполнения команд Transact-SQL, перехваченных профилировщиком. Затем сохранѐнные в таком формате планы можно открыть в SQL Server Management Studio для дальнейшего анализа; 14 Возможность группировать события прямо в окне профилировщика. С еѐ помощью, например, вы можете очень просто посчитать, сколько раз в течение дня на сервере выполнялась та или иная команда Transact-SQL. Прочие утилиты SQL Server. В этом разделе представлена краткая информация о других графических утилитах, которые поставляются вместе с SQL Server . Для большинства из них нет ярлыков, доступных из меню Пуск. Для запуска этих утилит потребуется найти их исполняемый файл на диске (некоторые из них можно также вызвать из других программных средств, таких как SQL Server Management Studio). Программы Microsoft SQL Server 2008 Analysis Services Deployment Wizard Analysis Services Deployment Wizard – мастер развѐртывания проектов Analysis Services на другом сервере. Обычно используется для переноса созданной вами на тестовом сервере базы данных OLAP на рабочий сервер. Программы Microsoft SQL Server 2008 Analysis Services Instance Rename Analysis Services Instance Rename – утилита, которая позволяет переименовать экземпляр Analysis Services. Используется обычно для перевода тестового сервера Analysis Services в рабочий режим в тех ситуациях, когда имя Analysis Services жѐстко прописано в клиентских приложениях. Программы Microsoft SQL Server 2008 Analysis Services Migration Wizard Analysis Services Migration Wizard – средство, предназначенное для переноса баз данных OLAP, созданных в предыдущей версии Analysis Services, на SQL Server 2005. Запускается из того же меню. Replication Conflict Viewer – средство, которое позволяет просматривать и разрешать конфликты, возникающие в процессе репликации слиянием. 15 Configure Web Synchronization Wizard – это программное средство используется для настройки синхронизации по протоколу HTTP между SQL Server Mobile Edition (редакция для наладонных компьютеров и смартфонов) и обычным SQL Server. Фактически позволяет настроить репликацию между этими двумя редакциями SQL Server. Copy Database Wizard – этот мастер позволяет перенести базы данных (со всеми объектами, данными, разрешениями и т. п.) с SQL Server 2005 или SQL Server 2008 на другой экземпляр SQL Server 2008. Это один из самых простых способов произвести обновление базы данных SQL Server 2005 до SQL Server 2008. Execute Package Utility – наследница утилиты DTSRunUI в предыдущих версиях SQL Server. Позволяет запустить на выполнение пакеты SQL Server Integration Services (SSIS), запланировать их выполнение по расписанию или создать командную строку для запуска пакета из консольного аналога DTSExec.exe. Replication Monitor – важное средство для мониторинга и диагностики репликации. Можно запустить как из командной строки, так и из SQL Server Management Studio. Программы Microsoft SQL Server 2008 Configuration Tools Reporting Services Configuration Reporting Services Configuration – эта программа предназначена для управления настройками Reporting Services. Программы Microsoft SQL Server 2008 SQL Server Import and Export Wizard SQL Server Import and Export Wizard – утилита, заменившая в новой версии SQL Server старый мастер импорта и экспорта данных DTS Import/Export Wizard. Предназначена она для той же цели – быстрое создание простых пакетов для загрузки/выгрузки данных в SSIS. 16 Заключение Microsoft SQL Server – эффективнейший программный продукт, использование которого позволяет вести огромную базу данных без каких либо ограничений, но без грамотного администрирования баз невозможно добиться корректной работы и информацией хранящейся в них. Поэтому при использовании SQL Server в повседневной работе предприятия, стоит уделить большое внимание именно администрированию баз данных. Администрирование представляет собой практически главнейшую область работы с SQL Server, и включает как разработку структуры баз данных, еѐ реализацию, проектирование систем безопасности, создание пользователей и т.д. Поэтому грамотный подход к администрированию подразумевает, что этим должен заниматься, безусловно, образованный специалист, имеющий опыт работы с базами данных, который сможет правильно установить права доступа пользователям базы, совершать резервное копирование на случай сбоя систем, и поддерживать работу сервера. Без грамотного администрирования не возможна корректная работа с базами. А в случае, когда базы SQL Server используется на большом производстве, то небольшой сбой, или некорректно установленный доступ к базам могут привести не только к сбою в работе самой программы, но и нанести финансовый вред всему производству. Из всего этого следует, что к администрированию баз следует отнестись настолько серьѐзно, насколько это возможно. 17 Список литературы 1. Диго С. М. Базы данных. Проектирование и создание: Учебнометодический комплекс. – М.: Изд. центр ЕАОИ. 2008. – 171 с. 2. Администрирование Microsoft SQL Server 2000. Учебный курс MCSA/MCSE, MCDBA/Пер. с англ. – 2-е изд., испр. – М.: Издательскоторговый дом ≪Русская Редакция≫, 2002. — 640 стр.: ил. 18