SQL Server

advertisement
Учебная дисциплина
«Хранилища данных»
Лекция 3
КОМПОНЕНТЫ MICROSOFT SQL SERVER 2008
Учебные вопросы:
1 Общие сведения о Microsoft SQL Server 2008
2 Конфигурация MS SQL Server
3 Системные базы данных
Литература
1. Бергер А.Б. Microsoft SQL Server 2005 Analysis
Services. OLAP и многомерный анализ данных / Бергер
А.Б, Горбач И.В., Меломед Э.Л, Щербинин В.А.,
Степаненко В.П. / Под общ. Ред. А.Б. Бергера, И.В.
Горбач. – СПб.: БХВ-Петербург, 2007. – 928 с.
2. Microsoft SQL Server 2008: Data mining –
интеллектуальный анализ данных. Пер. с англ. / Дж.
Макленнен, Чж. Танг, Б. Криват. – БХВ-Петербург. 2009.
– 720 с.
3. Малыхина М.П. Базы данных: основы,
проектирование, использование. – Спб.: БХВПетербург, 2004. – 512 с.
Цель лекции
Цель: определить основные компоненты
Microsoft
SQL
Server
2008
и
продемонстрировать
их
основные
возможности.
1 Общие сведения о Microsoft SQL Server 2008
Microsoft SQL Server – это система управления
клиент-серверными реляционными базами данных,
ориентированная на работу под управлением
операционных систем Microsoft Windows. Microsoft
SQL Server 2008 (MS SQL Server) поддерживает
операционные системы Windows Server 2003,
Windows Server 2008, Windows XP, Windows Vista.
MS SQL Server включает в себя как серверную, так и
клиентскую часть. Однако состав служб, включенных в
поставку сервера, зависит от версии.
MS SQL Server 2008 доступен в шести версиях
(редакциях):
1. Enterprise
Edition.
Версия
с
максимальными
возможностями для применения в крупных системах.
Сюда включены более 60-ти функций, недоступных в
других версиях, например: сжатие данных и
резервных
копий,
аудит
с
использованием
расширенного набора событий, утилита для
управления
ресурсами
Resources
Governor,
возможность горячей замены процессора.
2. Standard Edition. Предназначена для использования в
системах среднего уровня, где не требуются
возможности Enterprise версии. Предоставляет
базовые возможности по аналитике и созданию
отчетов.
3. Workgroup Edition. Подходит для установки в филиалах
компании и предоставляет средства управления
данными,
создания
отчетности,
удаленной
синхронизации и управления.
4. Web Edition. Ориентирована на работу в
Интернете,
позволяет
предоставлять
клиентам доступ к крупномасштабным вебприложениям.
5. Express Edition. Бесплатная версия. Подходит
для обучения, для создания настольных и
небольших серверных приложений, а также
для
распространения
независимыми
производителями ПО.
6. Compact
Edition.
Бесплатная
версия.
Позволяет создавать автономные или мало
связанные приложения для мобильных
устройств, настольных ПК и веб-клиентов,
работающих под управлением любых версий
Microsoft Windows.
•
•
•
•
•
Служба SQL Server (MSSQLServer) является ядром
этой СУБД, от ее функционирования зависят все
остальные службы. Выполняет следующие основные
функции:
распределяет
ресурсы
компьютера
между
пользователями, одновременно работающими с
системой;
управляет файлами баз данных и журналами
транзакций;
выполняет
команды
языка
Transact-SQL
(рассматривается в лекции 3), запросы и хранимые
процедуры (рассматриваются в лекциях 4 и 5
соответственно), указываемые пользователями;
обеспечивает безопасность системы (например,
осуществляет проверку учетных записей пользователей;
система безопасности рассматривается в лекции 6);
отвечает за согласованность и целостность данных,
предотвращая логические проблемы.
Служба SQL Server Agent отвечает за автоматическое
исполнение назначенных администратором заданий,
выполняет отслеживание определенных событий и
сопоставленных им заданий (например, создание
резервных копий, отправка сообщения администратору
о возникшей проблеме и т.п.).
Служба Full-Text Filter Daemon позволяет реализовать
поиск символьной информации в полях таблиц баз
данных. С помощью этой службы осуществляется поиск
слов и фраз, причем в результате могут быть отражены
склоняемые формы глаголов и существительных.
Служба Integration Services заменяет службу DTS SQL
Server 2000 и позволяет выполнять следующее:
– отслеживать выполнение всех пакетов служб Integration
Services, выполняющихся на компьютере;
– отображать в иерархическом виде пакеты и папки служб
Integration Services, которые физически хранятся в разных
местах.
Служба Analysis Services – ядро сервера
OLAP, позволяет создавать аналитические
приложения с миллионами строк данных и
тысячами пользователей.
Служба Reporting Services – эта служба
представляет серверный компонент, который
отвечает
за
генерацию
отчетов,
предоставление
их
пользователям,
выполнение различных служебных операций с
отчетами.
Служба SQL Server Browser предназначена
для формирования списка доступных в сети
SQL-серверов.
OLAP – On-Line Analytical Processing –
оперативная аналитическая обработка.
MS SQL Server поддерживает множество
различных типов клиентов, каждый из которых
может работать на своей аппаратной и
программной платформе.
В комплект поставки MS SQL Server входят
стандартные
утилиты,
которые
могут
использоваться для управления работой сервера
и создания логической структуры баз данных,
поддерживаемых
им.
Для
разработки
клиентского
приложения
могут
быть
использованы и различные средства разработки
приложений, например, среды визуального
программирования Visual Studio .Net 2003-2008,
Visual Basic, Delphi и др.
К
стандартным
утилитам
администрирования относятся следующие
приложения:
1. SQL Server Configuration Manager
2. SQL Server Management Studio
3. Reporting Services Configuration
4. Bulk Copy Program
5. SQL Server Profiler
6. Утилита sqlcmd
7. SQL Server Integration Services (SSIS)
8. SQL
Server
Business
Intelligence
Development Studio
SQL Server Configuration Manager
• Предоставляет следующие возможности:
• по управлению работой всех служб MS SQL Server,
рассмотренных
выше.
Можно
запустить,
приостановить или полностью остановить любую из
описанных выше служб, а также указать, от имени
какого пользователя ее следует запускать.
• По определению параметров сетевых библиотек,
которые обеспечивают взаимодействие с MS SQL
Server. Можно выбрать один или сразу несколько
методов доступа к серверу.
• По конфигурированию сетевых библиотек клиента,
используемых для доступа к MS SQL Server. После
настройки методов доступа к серверу, можно
произвести конфигурацию клиентских протоколов.
Узел SQL Native Client 10.0 Configuration содержит
два раздела: Client protocols и Aliases
Рисунок 1 - Окно утилиты SQL Server
Configuration Manager
SQL Server Management Studio
Утилита Management Studio позволяет выполнять следующее:
• управлять настройками MS SQL Server;
• конфигурировать систему безопасности: управление ролями,
учетными записями, удаленными серверами;
• работать со структурой баз данных: создавать, редактировать и
удалять БД и элементы БД;
• управлять выполнением заданий по расписанию;
• показывать текущую активность: текущие пользователи, какие
объекты заблокированы, информацию о производительности.
Перед началом работы с сервером необходимо подключиться к
нему, указав следующую информацию:
• Server Type. Здесь следует выбрать, к какой именно службе
необходимо подключится: Database Engine, Analysis Services,
Report Server или Integration Services.
• SQL Server. Позволяет указать, к какому серверу будет
осуществляться подключение. По умолчанию имя SQL Server
совпадает с именем компьютера.
• Authentication Type – способ аутентификации, можно выбрать
Windows Authentication или SQL Server Authentication.
Рисунок 2 - Окно соединения с SQL-сервером
Редактор запросов (Query Editor)
Для того чтобы написать новый запрос к базе данных,
необходимо выполнить команду New Query, расположенную
на панели инструментов Management Studio. В результате
откроется новая вкладка, в которой можно писать SQL-код (см.
рис. 3).
Выполним следующий запрос:
SELECT * FROM INFORMATION_SCHEMA.TABLES;
Замечание: Для выполнения запроса необходимо
выполнить команду Query – Execute (F5). Чтобы просто
проверить правильность синтаксической записи можно
воспользоваться командой Query – Parse (Ctrl+F5), при этом
сам запрос не будет выполнен.
Рисунок 3 - Главное окно приложения Management
Studio с окном Редактора запросов
Object Explorer позволяет осуществлять навигацию по базе
данных: просматривать доступные объекты, выполнять
запросы на просмотр содержимого таблиц, создавать скрипты
для объектов и т.д. (рис. 4).
Выпадающий список баз данных
База данных, выбранная в этом списке, используется в
редакторе запросов как база данных по умолчанию (см. рис.
5). Поэтому важно перед выполнением запросов, убедиться,
что выбрана нужная БД. Это можно сделать либо через
выпадающий список, либо при помощи команды SQL:
USE AdventureWorks2008
Рисунок 5 - Окно выбора текущей базы данных
Reporting Services Configuration
Используется для конфигурации служб отчетов. MS SQL Server 2008
включает в себя встроенный web-сервер, поэтому нет необходимости в
установке и настройке служб интернет-серверов IIS (Internet Information
Services). Для создания отчетов используется Report Definition Language (RDL) –
язык, основанный на XML.
Bulk Copy Program
Утилита
командной
строки,
предназначенная
для
переноса
форматированных данных большого объема в MS SQL Server или из него.
Например, отформатированные данные могут быть автоматически
перенесены из обычного текстового файла в таблицу MS SQL Server.
SQL Server Profiler
Позволяет в реальном времени отслеживать выполнение всех команд.
Профайлер может находить «узкие» места в базе данных, определять
запросы, которые долго выполняются, и наиболее часто выполняемые
запросы.
XML (eXtensible Markup Language – расширяемый язык разметки) –
текстовый формат, предназначенный для хранения структурированных
данных.
Утилита sqlcmd
Утилита командной строки, которая позволяет выполнять SQL-скрипты.
Данная утилита может оказаться намного эффективнее, чем Management
Studio, когда не требуется графический пользовательский интерфейс.
SQL Server Integration Services (SSIS)
Позволяет легко извлекать данные из любых источников через
механизм OLE DB или провайдеров данных .NET и помещать их в таблицы
MS SQL Server. Во время переноса данных к ним может быть применена
трансформация.
SQL Server Business Intelligence Development Studio
Представляет особую версию Visual Studio и позволяет создавать пакеты
для Integration Services, отчеты для Reporting Services и работать с
проектами Analysis Services.
OLE DB (Object Linking and Embedding, Database – внедрение и
связывание объектов в базах данных) – набор интерфейсов, которые
позволяют приложениям обращаться к данным из различных источников.
2 Конфигурация MS SQL Server
Конфигурирование работы службы MSSQLServer может быть
выполнено либо специальной хранимой процедурой,
выполняемой в утилите Management Studio, либо графическим
способом средствами этой же утилиты. Выбор способа не имеет
значения, т.к. графический способ осуществляет доступ к
системным данным с помощью этой же хранимой процедуры,
только в более наглядной форме.
Для изменения параметров службы с помощью Management
Studio необходимо выбрать нужный сервер и в контекстном
меню выбрать команду Properties, и в появившемся
диалоговом окне выполнить конфигурирование сервера.
На вкладке General отображаются основные сведения о
системе: версия операционной системы, объем памяти,
количество процессоров и др., а также параметры запуска
служб сервера.
Вкладка Memory позволяет управлять выделением памяти
для выполнения действий MS SQL Server: либо динамическое
управление памятью, либо установка фиксированного размера.
Вкладка Processors позволяет управлять тем, на каких
процессорах можно выполнять запросы SQL.
С
помощью
вкладки
Security
определяется
тип
аутентификации
пользователей,
также
определяются
параметры аудита доступа к серверу. Можно настроить сервер
на использование определенной учетной записи, под которой
будет запускаться служба MSSQLServer.
Вкладка
Connections
позволяет
конфигурировать
клиентские подключения к серверу. Если параметр равен 0,
то разрешается подключение максимального количества
пользователей – 32767 подключений.
С помощью вкладки Database Settings указываются
настройки вновь создаваемых баз данных: параметры
индексов и работы с устройствами резервного копирования,
время восстановления базы данных.
Вкладка Advanced содержит некоторые общие установки
сервера. Например, определяется язык по умолчанию для
сообщений сервера или регулируется поддержка 2000 года,
которая определяет, как будут интерпретироваться две
последние цифры года.
Вкладка Permissions позволяет управлять именами входа и
ролями, а также управлять правами на выполнение действий
в MS SQL Server.
3 Системные базы данных
База данных обычно представляет собой совокупность таблиц
и других объектов, таких как представления, хранимые
процедуры и другие.
MS SQL Server 2008 содержит четыре системные базы данных:
master;
model,
msdb.
tempdb.
Все эти базы данных необходимы для корректной работы
сервера. Без некоторых из них работа MS SQL Server и вовсе
будет невозможна. Рассмотрим назначение каждой системной
базы данных.
БД master
Любой SQL сервер независимо от версии содержит БД master,
в которой фиксируется всё, что происходит в системе. Например,
при создании новой БД добавляется запись в таблицу
sys.databases БД master. Также все системные хранимые
процедуры находятся в этой БД. Поскольку практически все, что
описывает MS SQL Server, хранится здесь, то эта БД критически
важна и не может быть удалена.
БД model
Данная БД используется как шаблон для создания любой
новой базы данных. Таким образом, можно внести изменения в
эту БД, чтобы создаваемые вновь базы содержали нужные
изменения. Например, можно добавить группу пользователей,
которая должна быть по умолчанию во всех новых БД. Поскольку
model используется в качестве шаблона, то она обязательно
должна присутствовать для нормального функционирования
сервера. Кроме того, следует иметь в виду, что новые БД должны
иметь размер не меньше, чем БД model.
БД msdb
В этой БД служба SQL Server Agent хранит все системные
задачи. Например, если задано резервирование по расписанию,
то в msdb появится специальная запись. Аналогичным образом
данную БД используют и другие подсистемы MS SQL Server,
например, SQL Server Integration Services.
БД tempdb
Фактически tempdb является рабочей областью для MS SQL
Server. Например, если исполняется большой сложный запрос,
для выполнения которого MS SQL Server требуется создать
временную таблицу, то такая таблица будет создана в БД tempdb.
То же самое произойдет и в случае, если пользователь сам
создает временную таблицу, хотя пользователю может казаться,
что он создает ее в текущей базе. В отличие от других БД, msdb и
сама является временной: она воссоздается каждый раз заново
при запуске MS SQL Server.
Краткие итоги. Рассмотрены службы MS SQL Server 2008,
обеспечивающие как базовую функциональность, так и
дополнительную: средства отчетов, интеграции и т.д. Дана
характеристика системных баз данных и основное их назначение.
Контрольные вопросы
1. Поясните назначение и перечислите основные части
Microsoft SQL Server.
2. Охарактеризуйте основные версии MS SQL Server 2008.
3. Перечислите основные службы MS SQL Server 2008 и
дайте их краткую характеристику.
4. Перечислите
стандартные
утилиты
администрирования MS SQL Server 2008 и дайте их
краткую характеристику.
5. Какие возможности предоставляет SQL Server
Configuration Manager.
6. Какие возможности предоставляет SQL Server
Management Studio.
7. Какими
способами
может
быть
выполнено
конфигурирование работы службы MSSQLServer?
8. Перечислите и охарактеризуйте системные базы
данных, имеющиеся в MS SQL Server 2008?
Download